通用滑动门类

效果预览

 


提示:可以修改后运行

源代码:

使用方法

1.把以上代码引进你的页面

<script type="text/javascript" src="scrollDoor.js"></script>

2.在页面的"<body>"标签前加入以下代码:

<script type="text/javascript">
var SDmodel = new scrollDoor();
SDmodel.sd([菜单id数组],[显示层id数组],"菜单触发类","菜单关闭类");
SDmodel.sd([菜单id数组2],[显示层id数组2],"菜单触发类","菜单关闭类");
SDmodel.sd([菜单id数组3],[显示层id数组3],"菜单触发类","菜单关闭类");
</script>

其中sd方法中的参数为:

  • 参数一 [菜单id数组]:滑动门菜单的id
  • 参数二 [内容id数组]:显示和隐藏滑动内容层的id
  • 参数三 "菜单触发类":鼠标经过滑动门菜单的类
  • 参数四 "菜单关闭类":鼠标滑出滑动门菜单的类

3.页面中有几个滑动门就调用几次sd函数,只需改变sd调用的参数,如以上代码上所展示.

function scrollDoor(){
}
scrollDoor.prototype = {
sd : function(menus,divs,openClass,closeClass){
 var _this = this;
 if(menus.length != divs.length)
 {
  alert("菜单层数量和内容层数量不一样!");
  return false;
 }    
 for(var i = 0 ; i < menus.length ; i++)
 { 
  _this.$(menus[i]).value = i;    
  _this.$(menus[i]).onmouseover = function(){
     
   for(var j = 0 ; j < menus.length ; j++)
   {      
    _this.$(menus[j]).className = closeClass;
    _this.$(divs[j]).style.display = "none";
   }
   _this.$(menus[this.value]).className = openClass; 
   _this.$(divs[this.value]).style.display = "block";    
  }
 }
 },
$ : function(oid){
 if(typeof(oid) == "string")
 return document.getElementById(oid);
 return oid;
}
}