2012-04-24 29 views
0

好吧,我有这样的代码:增加了slideDown事件

<html> 
<head> 
var timeout   = 0; 
var closetimer  = 0; 
var ddmenuitem  = 0; 

function jsddm_open() 
{ jsddm_canceltimer(); 
jsddm_close(); 
ddmenuitem = $(this).find('#as').eq(0).css('visibility', 'visible'); 
bb = $(this).css("background","#0099FF"); 
} 

function jsddm_close() 
{ 
if(ddmenuitem) 
ddmenuitem.css('visibility', 'hidden'); 
} 

function jsddm_timer() 
{ closetimer = window.setTimeout(jsddm_close, timeout); 
bb = $(this).css("background","none"); 
} 

function jsddm_canceltimer() 
{ if(closetimer) 
    { window.clearTimeout(closetimer); 
     closetimer = null;}} 

$(document).ready(function() 
{ 


$("#sinputbox").watermark("Search item here..."); 
$('#menu > li').bind('mouseover', jsddm_open); 
$('#menu > li').bind('mouseout', jsddm_timer);}); 

document.onclick = jsddm_close; 

</head> 
<body> 
<div id="hmenu"> 
<ul id="menu"> 
    <li><a class="active" href="index.php">Home</a></li> 
    <li><a href="gallery.php?name=gallery">Gallery</a> 
    <ul id="as"> 
      <li><a href="gallery.php?name=clothing">Clothing</a></li> 
      <li><a href="gallery.php?name=furniture">Furniture</a></li> 
      <li><a href="gallery.php?name=householditems">Household-items</a></li> 
      <li><a href="gallery.php?name=automotive">Automotive</a> </li> 
      <li><a href="gallery.php?name=food">Food</a></li> 
    </ul> 
    </li> 
    <li><a href="about.php">About</a></li> 
    <li><a href="contact.php">Contact</a></li> 
</ul> 
</div> 
</body> 
</html> 

现在,我打算到了slideDown添加到下拉式菜单,但我不知道怎么办。我试图添加这一行:“$('this').slideDown('slow');”里面的这个函数:“function jsddm_timer()”但目前为止没有任何工作。这里有人能帮我解决这个问题吗?我对任何建议表示感谢。

回答

1

试试这个的jsfiddle并告诉如果你想要的功能是这样的:

更新的链接:

http://jsfiddle.net/qFEJh/1/

这是更新的代码

function jsddm_open() 
{ 
    $(this).find('#as').slideDown('slow'); 
    bb = $(this).css("background","#0099FF"); 
} 

function jsddm_close() 
{ 
    $(this).find('#as').slideUp('slow'); 
} 

$(document).ready(function() 
{ 
    $('#menu > li:has(ul)').hover(jsddm_open,jsddm_close); 
}); 

document.onclick = jsddm_close; 
+0

工作,但每当我徘徊到其他父菜单当前父菜单的CSS背景颜色状态,我基本上悬停的画廊持有下拉留下来,它应该切换,我的意思是说,每当它一直取消的CSS背景颜色应该切换为无。 – 2012-04-24 20:43:10

+0

好了,现在修好了,谢谢。 – 2012-04-24 20:47:25

0

在你的情况,那岂不是:

$(this).find('#as').eq(0).slideDown('slow'); 

假设你把这个在您的jsddm_open功能。

+0

仍然没有工作。 :( – 2012-04-24 10:35:54