Javascript 自适应高度的Tab选项卡

  JS部分具体的代码如下:

  

复制代码 代码如下:

  var getSiblingNode=function(className,elAr,el,not){

  className=" "+className+" ";

  var Arr=[];

  for(var i=0,l=elAr.length;i<l;i++){

  if(elAr[i]!=el&&(elAr[i].nodeType===1)&&(" "+elAr[i].className+" ").indexOf(className)>-1&& not){

  Arr.push(elAr[i]);

  }

  else if(elAr[i]!=el&&elAr[i].nodeType===1){

  Arr.push(elAr[i]);

  }

  }

  return Arr;

  }

  var runFn=function(id,parentId){

  var elId=id,parentId=parentId;

  var contentEl=document.getElementById(elId);

  var liEl=contentEl.getElementsByTagName("ul")[0].getElementsByTagName("li");

  var divEl=document.getElementById(parentId).getElementsByTagName("div");

  for(var i=0,l=liEl.length;i<l;i++){

  //这里有个闭包,用于获取被选中元素的同类元素;

  (function(i){

  var thisSibling=getSiblingNode("n",divEl,divEl[i],true);

  liEl[i].onclick=function(){

  divEl[i].style.display="block";

  //设置选中的dom元素的状态;

  this.className="hasClick";

  var divElSibling=getSiblingNode(null,liEl,liEl[i],false);

  //设置其他未被选中的dom元素的css;

  for(var a=0,b=thisSibling.length;a<b;a++){

  thisSibling[a].style.display="none";

  }

  for(var x=0,y=divElSibling.length;x<y;x++){

  divElSibling[x].className="havtClick";

  }

  }

  })(i)

  }

  }

  var slide=function(){

  runFn("content","disDiv");

  }

  window.onload=slide;