如果我鼠标悬停并将鼠标输出.activate_tooltip一次,则此后继续工作。但第一次鼠标悬停不会触发任何操作。有人知道是什么原因造成的吗?
$('.task_box').delegate('.activate_tooltip', 'mouseover mouseout', function(event) {
if (event.type == 'mouseover') {
clearTimeout(timeOut);
$(this).prev().find('.tooltip_2').show();
} else if (event.type == "mouseout") {
timeOut = setTimeout(hideToolTip, 0);
}
});
<div class="edit_task_icon_div" style="position:relative;">
<div style="position:relative">
<div class="tooltip_2" style="position: absolute; top: 20px; left: -6px;">
<div class="tooltip_2_text">Edit</div>
</div>
</div>
<a href="#" id="edit_{{task.id}}" class="pencil_button activate_tooltip"></a>
</div>
答案 0 :(得分:0)
将此event.type="mouseout"
更改为event.type=='mouseout'
使用mouseenter
和mouseleave
代替mouseover
和mouseout
答案 1 :(得分:0)
想出来。由于某种原因,clearTimeout导致了这个问题。当我使用.hover事件时,它工作,但在委托中注释它似乎解决了问题。不知道为什么!