gpt4 book ai didi

javascript - 将与选择器相关的变量传递给多个 jQuery 事件

转载 作者:行者123 更新时间:2023-12-02 16:41:48 25 4
gpt4 key购买 nike

我正在寻找一种方法来将与元素相关的变量传递给 mouseenter 和 mouseleave 事件。例如,如果我有:

jQuery('.element').on({
mouseenter: function () {
var $child = jQuery(this).find('.child');
$child.fadeIn();
},
mouseleave: function () {
var $child = jQuery(this).find('.child');
$child.fadeOut();
}
});

有没有办法避免两次定义 $child 变量?我能够使用 .hover() 解决这个问题,但是我现在无法使用它,因为我在动态生成的元素上调用它,而 .hover() 将不起作用。

最佳答案

您可以使用这种方式来委托(delegate)这两个事件:

jQuery(document).on("mouseenter mouseleave", ".element", function(e){
jQuery(this).find('.child').fadeToggle();
// you can check for e.type for more complex logic
});

委托(delegate)不同处理程序的语法是:

jQuery(document).on({
mouseenter: function () {
//...
},
mouseleave: function () {
//...
}
}, ".element");

关于javascript - 将与选择器相关的变量传递给多个 jQuery 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27431911/

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