我在做一网站的下拉菜单,我想在鼠标无意的滑过(即在该标签上面停留的时间少于3毫秒)时,并不显示子菜单。我想到的是用setTimeout来实现,但是过了3毫秒后它又会显示出来了。JQuery代码如下:
$("#content02 ul li dl dt").hover(
function(){
var fHover=$(this);
var timeId= setTimeout(function(){
$("#content02 ul li dl dt a").not("#default").removeClass("hover");
$("#content02 ul li dl.ddList dd").css("display","none");
fHover.children("a").addClass("hover");
fHover.parent().parent().find("dl.ddList dd").css("display","block");},300)
}
);
请教下,这有这么解决方法?
$("#content02 ul li dl dt").hover(
function(){
var fHover=$(this);
var timeId= setTimeout(function(){
$("#content02 ul li dl dt a").not("#default").removeClass("hover");
$("#content02 ul li dl.ddList dd").css("display","none");
fHover.children("a").addClass("hover");
fHover.parent().parent().find("dl.ddList dd").css("display","block");},300)
}
);
请教下,这有这么解决方法?
var timeId= setTimeout(abc(),3000);
});再$(function abc(){
你要的代码
});就这样。。不知道你的是怎么出错的
mouseout : clearTimeout(t)
mouseout : clearTimeout(timeId);