我遗漏了什么?
$("TABLE.tbl-graphs DIV.util").mouseover(
function(){
$("DIV.pic-container, DIV.util-info").hide("slow");
$("DIV.util-description").show("slow");
});
$("TABLE.tbl-graphs DIV.util").mouseout(
function(){
$("DIV.pic-container, DIV.util-info").show("slow");
$("DIV.util-description").hide("slow");
});发布于 2011-04-14 02:16:52
在调用.show()或.hide()之前使用.stop()。您可能还想使用mouseenter和mouseleave -不同之处在于事件冒泡。
试试这件衣服的尺寸:
var $divs = $("div.pic-container, div.util-info, div.util-description");
$("table.tbl-graphs div.util").live('mouseenter mouseleave'
function() {
$divs.stop().toggle("slow");
});请注意,要显示/隐藏的<div>需要处于正确的初始状态才能正常工作。
发布于 2011-04-14 02:14:06
我认为您正在寻找出队:http://api.jquery.com/dequeue/
这不允许排队的事件(例如,悬停在div上,让它淡入淡出三次,只有一次)
发布于 2011-04-14 02:15:25
解决这个问题的常用方法是使用一个简单的标志,例如,如果它当前正在做某件事,它会忽略鼠标请求
if(flag) return;
flag = true然后将flag = false的回调添加到函数中
https://stackoverflow.com/questions/5653647
复制相似问题