实例
1.构造函数
标签作为对象的属性
添加一个入口方法 init 在这个方法中进行循环事件操作
事件里面的操作,会放到一个方法里面
2.实例化对象
function TabSwitch(){
//1.添加属性
this.menus = document.getElementsByTagName("button");
this.items = document.getElementsByTagName("div");
console.log(this); //TabSwitch创建的对象
var that = this; //在this指向对的时候,存储一份
//2.添加一个入口方法
this.init = function(){
for(var i = 0;i<this.menus.length;i++){
this.menus[i].index = i;
this.menus[i].onclick = function(){
//会把事件发生时要执行的操作,放在一个方法中
//事件处理函数中的this---触发事件的对象(点谁就是谁)
that.changeItem(this.index);
}
}
}
//入口方法都是自己调用
this.init();
//切换div的方法
this.changeItem = function(index){
for(var j = 0;j<this.items.length;j++){
this.items[j].style.display = "none";
this.menus[j].className = "";
}
this.items[index].style.display = "block";
this.menus[index].className = "active"
}
}
//2.创建实例对象
new TabSwitch();