JS 부분의 구체적인 코드는 다음과 같습니다.
var getSiblingNode=function( className,elAr,el,not){
className=" " className " "
var Arr=[]
for(var i=0,l=elAr. length;iif(elAr[i]!=el&&(elAr[i].nodeType===1)&&(" " elAr[i].className " ").indexOf(className )>-1&& 아님) {
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//유사한 요소를 얻기 위한 클로저가 있습니다. 선택한 요소의
(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;athisSibling[a ].style.display="none";
}
for(var x=0,y=divElSibling.length;xdivElSibling[x].className ="havtClick" ;
}
}
})(i)
}
}
var Slide=function(){
runFn("content","disDiv ");
}
window.onload=slide;