谁给个详解

来源:百度知道 编辑:UC知道 时间:2024/05/27 07:22:10
function Show(di,num,divn,activecss,unactivecss)
{
var obj = document.getElementById(divn+di);
obj.className = activecss;
var divobj = document.getElementById(divn+di+'_nr');
divobj.style.display = 'block';

for(i=0;i<num;i++)
{
if(di!=i)
{
temobj = document.getElementById(divn+i);
temobj.className = unactivecss;
divobj = document.getElementById(divn+i+'_nr');
divobj.style.display = 'none';
}
}
}
滑动门js
越详细越好 谢谢了
大哥能不能给介绍一下 你说的那个详细方法,谢谢!

这是一个JS特效代码,作的滑动效果,但这样作有点...

你的问题也不大,其实给你解释一下函数就可以了。

document.getElementById();
该函数是要所ID取得相应的标签,传的参数是ID的名称!
如document.getElementById("DIVID");则在你的HTML中有一个这样的定义:
<div id="DIVID">取出标签就是这一个层。当然如果你定义的层比较多时,一般喜欢用数字后辍时,如你定义有8个层,分别是div0~div7,这时可以用
document.getElementById("div"+0);
好在JS是一个弱定义的语言,属于EMACScript,字符与数字相加时会自动将数字作字符处理。所以我们可以很方便地用循环实现。
for (i= 0;i<8;i++) document.getElementById("div"+i);
取出的标签作为物体使用,这符合了W3C的DOM思想,也就是把任何一个标签都作为一个对象。其他的使用方式可以对对象进行控制了!

从这一个函数上来看,该滑动门使用的原理是:
建立很多个DIV进行排列,然后从外向内渐次显示,这就是打开的过程,反之,由内向外渐次隐藏,这就是关闭,其实不如用div的位置移动更好些!

这个程序片段就是这样!我认为这样会拖速度的!不如用DIV中位置与大小来控制。如width,left等属性,经过计算也可以达到这种效果的!

这还用详细啊?如果左边门是一个DIV层,右边也是一个DIV层,当然两个层的定义是:
position:absolute;表示绝对定位,然后可以用JS语言去控制其:
divid.style.left +=1;
该语句可以将左侧门移动到某一个位置,当然是一个条件可以控制的:
if(divid.style.left < 0),如果left=0时表示左侧的DIV层已经从屏幕外完全移入,这是一个关门的效果,反之,i