用jquery做了个下拉菜单[仿yahoo]

看见了yahoo邮箱里有个小下拉菜单很好看,猪做了一个。

https://files.cnblogs.com/pengpengsay/jquery-navi.rar

里面有一个小bug,忘高手指出。。就是菜单出现后,点击其他地方,菜单消失,但是需要点击2次,
主要是由于代码是 <a href="http://www.zzcn.net/">导航<span id="dh1"></span></a>
是由于这种结构造成的,但是我不能改这种结构,要不效果就不对了哦。。

-------------------------------------------------------------------------------

经过刚刚的奋斗。。发现刚才的代码里面有bug,特此修复bug,为了留念上面的错误,特此不予删除(下面的给出的代码也是有bug的代码,但是这里就不删除了。)

点击这里下载正确的下拉菜单代码 https://files.cnblogs.com/pengpengsay/jquery-navi2.rar

我已经把代码放到我的网站上了。。 你可以直接看效果 点击这里

下面是偶写的一部分代码(以下代码为存在bug的代码,正确的请下载navi2的)。。呵呵。。jquery 用的是1.2.6

$(document).ready(function(){
  
var d1x_click = false;
  
  $(
"body").not($("#d1x")).click(function(){
  
if(!d1x_click)
  {
      $(
"#d1x").css("display","none");
  }
  d1x_click 
= false;
  
//alert("b");
  
  })
  $(
"#d1x").click(function(){
  d1x_click 
= true;
  });
  $(
"#dh1").click(function(){
      
//alert("c");
      var offset = $("#d1").offset();
    
var d1x = $("#d1x");
    
if(d1x.css("display"== "block")
    {
        d1x.css(
"display","none");
    }
    
else
    {
        d1x.css(
"display","block");
    }
    d1x.css(
"position","absolute");
    d1x.css(
"left",offset.left);
    d1x.css(
"top",offset.top+$("#d1").height()+3);
    d1x_click 
= true;
    
return false;
  });
}); 
posted @ 2008-06-25 11:32  彭成刚  阅读(2710)  评论(8编辑  收藏  举报