A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 孙玉昌 中级黑马   /  2012-6-28 11:52  /  1460 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

<SCRIPT language=javascript>
function show(obj,maxg,obj2)
{
  if(obj.style.pixelHeight<maxg)
  {
    obj.style.pixelHeight+=maxg/10;
        obj.filters.alpha.opacity+=20;
        obj2.background="../images/title_hide.gif";
    if(obj.style.pixelHeight==maxg/10)
          obj.style.display='block';
        myObj=obj;
        mymaxg=maxg;
        myObj2=obj2;
        setTimeout('show(myObj,mymaxg,myObj2)','5');
  }
}
function hide(obj,maxg,obj2)
{
  if(obj.style.pixelHeight>0)
  {
    if(obj.style.pixelHeight==maxg/5)
          obj.style.display='none';
    obj.style.pixelHeight-=maxg/5;
        obj.filters.alpha.opacity-=10;
        obj2.background="../images/title_show.gif";
        myObj=obj;
        mymaxg=maxg
        myObj2=obj2;
        setTimeout('hide(myObj,mymaxg,myObj2)','5');
  }
  else    if(whichContinue)
          whichContinue.click();
}
function chang(obj,maxg,obj2)
{
  if(obj.style.pixelHeight)
  {
    hide(obj,maxg,obj2);
        nopen='';
        whichcontinue='';
  }
  else    if(nopen)
        {
          whichContinue=obj2;
      nopen.click();
        }
        else
        {
          show(obj,maxg,obj2);
          nopen=obj2;
          whichContinue='';
        }
}
</SCRIPT>
这里面的whichcontinue和nopen哪里来的啊?有什么作用啊?求高手把这个导航的运行原理给讲解一下呗,不胜感激!

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

1 个回复

倒序浏览
本帖最后由 许庭洲 于 2012-6-28 13:34 编辑

该JavaScript的导航条代码中的函数chang主要采用了if语句嵌套技术:
function chang(obj,maxg,obj2) //函数chang 的三个参数为obj, maxg和 obj2
{
        if(obj.style.pixelHeight)               //如果obj的高度存在
       {
              hide(obj,maxg,obj2);            //调用隐藏函数hide
              nopen='';                              //赋值nopen为空
              whichcontinue='';                 //赋值whichcontinue为空
      }
     else                                               //否则,如果obj的高度不存在
         if(nopen)                                   //如果nopen存在
        {
              whichContinue=obj2;          //赋值nopen为obj2
              nopen.click();                      //点击nopen
        }
        else                                           //否则,如果obj的高度不存在和nopen都不存在
       {
              show(obj,maxg,obj2);       //调用显示函数show
             nopen=obj2;                      //赋值nopen为obj2
             whichContinue='';              //赋值whichcontinue为空
        }
}

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马