JS面向对象实例

==================================================================

面试题:
面向对象的选项卡:
JS面向对象实例_第1张图片

<style>
#div1 input {background:white;}
#div1 input.active {background:yellow;}
#div1 div {width:200px; height:200px; background:#CCC; display:none;}
</style>
<script>
window.onload=function ()//
{
	new TabSwitch('div1');
};

function TabSwitch(id)//构造函数
{
	var _this=this;
	var oDiv=document.getElementById(id);
	
	this.aBtn=oDiv.getElementsByTagName('input');
	this.aDiv=oDiv.getElementsByTagName('div');
	
	for(var i=0;i<this.aBtn.length;i++)
	{
		this.aBtn[i].index=i;
		this.aBtn[i].onclick=function ()
		{
			_this.fnClick(this);//__this声明是为了用最开始的this
		};
	}
};

TabSwitch.prototype.fnClick=function (oBtn)
{
	//alert(this);
	for(var i=0;i<this.aBtn.length;i++)
	{
		this.aBtn[i].className=''
		this.aDiv[i].style.display='none';
	}
	oBtn.className='active';
	this.aDiv[oBtn.index].style.display='block';
}
</script>

你可能感兴趣的:(javascript)