gpt4 book ai didi

jquery - 在jquery中为mouseleave添加延迟

转载 作者:行者123 更新时间:2023-12-03 22:55:30 24 4
gpt4 key购买 nike

我在我的网站中使用此代码,我想知道如何为 mouseleave 函数添加延迟

$target.mouseenter(function(e){
var $tooltip=$("#"+this._tipid)
ddimgtooltip.showbox($, $tooltip, e)
})
$target.mouseleave(function(e){
var $tooltip=$("#"+this._tipid);
setTimeout(function() { ddimgtooltip.hidebox($, $tooltip); }, 4000);
})

$target.mousemove(function(e){
var $tooltip=$("#"+this._tipid)
ddimgtooltip.positiontooltip($, $tooltip, e)
})
if ($tooltip){ //add mouseenter to this tooltip (only if event hasn't already been added)
$tooltip.mouseenter(function(){
ddimgtooltip.hidebox($, $(this))
})

最佳答案

仅使用计时器的问题是,如果您将鼠标向左移动然后重新输入,那么在计时器完成后它仍然会隐藏。像下面这样的东西可能会更好,因为每当鼠标进入目标时我们就可以取消计时器。

var myTimer=false;
$target.hover(function(){
//mouse enter
clearTimeout(myTimer);
},
function(){
//mouse leave
var $tooltip=$("#"+this._tipid);
myTimer = setTimeout(function(){
ddimgtooltip.hidebox($, $tooltip);
},500)
});

关于jquery - 在jquery中为mouseleave添加延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3709255/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com