gpt4 book ai didi

javascript - jQuery : Kill Mouseenter/mouseleave function on mouseleave

转载 作者:行者123 更新时间:2023-12-03 12:35:09 29 4
gpt4 key购买 nike

我对 mouseenter/mouseleave 函数有一些问题。

请看一下我的代码;

$(".elms").live(
{
mouseenter: function (e)
{
$("a").click(function()
{
alert('test');
});
},
mouseleave: function (e)
{
//do something else
}
});

html:

<div class='elms'>test [ function says `test` ]</div>
<div class='elms'>test [ function says `test` and `test` ]</div>
<div class='elms'>test [ function says `test` and `test` and `test` ]</div>
<div class='elms'>test [ function says `test` and `test` and `test `test` and `test` ]</div>

这甚至会对 90 个元素重复,我想在休假时终止函数并创建新函数。像这样的事情:

var killIt = $(".elms").live(
{
mouseenter: function (e)
{
$("a").click(function()
{
alert('test');
});
},
mouseleave: function (e)
{
killIt.die();
}
});

有什么想法吗?

[ fiddle :http://jsfiddle.net/29f3P/ ]

最佳答案

我不确定这是否是您想要的,在这种情况下,您每次将鼠标悬停在 .elms 元素上时都会添加一个监听器。如果您确实想在每次鼠标悬停时添加监听器,并且不希望看到重复的行为,可以使用绑定(bind)和取消绑定(bind)来设置鼠标事件,如here:所述。

$(".elms").live({
mouseenter: function (e) {
$("a").bind("click", function(){
alert('test');
});

},
mouseleave: function (e) {
$("a").unbind("click");

}

});

我修改了你的 fiddle here:

关于javascript - jQuery : Kill Mouseenter/mouseleave function on mouseleave,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23769973/

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