gpt4 book ai didi

jquery - 为什么 setTimeout() 为 0 毫秒。影响我的职能

转载 作者:行者123 更新时间:2023-12-01 01:49:09 25 4
gpt4 key购买 nike

就我而言,悬停时 <div>因此在 <div> 中添加一个元素

但在某些 div 中,我想隐藏悬停元素后的前置元素。

这是我的代码及其工作!

HTML:

<div class="one">
<span class="content"></span>
</div>


<div class="two">
<span class="content"></span>
</div>

jQuery:

$("div.one > .content").on("hover" , function(){
var this_ = $(this);
this_.prev(".top").remove();
});


$("div.two > .content").on("hover" ,function(){
var this_ = $(this);
setTimeout(function(){this_.prev(".top").remove();})
});

.one.two两者都是相同的功能,但我想知道为什么第二个功能在我使用 setTimeout() 时会产生影响并且计时为 0 毫秒,为什么 0 毫秒会影响我的函数?

演示: http://jsfiddle.net/nShCy/

最佳答案

这不是 0 毫秒,而是 4 ms delay .

答案很简单:鼠标悬停后会触发 mouseenter,因此您试图删除尚不存在的元素。通过 4 毫秒的暂停和在不到 4 毫秒内完成的悬停回调,它可以按预期工作。

关于jquery - 为什么 setTimeout() 为 0 毫秒。影响我的职能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14623743/

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