gpt4 book ai didi

javascript - 避免重复听众

转载 作者:行者123 更新时间:2023-11-30 05:54:34 27 4
gpt4 key购买 nike

我需要将焦点设置在可排序列表的输入和文本区域元素上。
这是我的代码(1)。

a) 当我加载列表时,它工作正常,因为它为每个输入添加了一个监听器。
b) 当我向列表中添加一个新元素时,它会复制监听器。

应该如何避免呢?
也许尝试使用事件委托(delegate)在 body 上使用单个监听器?有什么想法吗?
谢谢

(1)

setTimeout(function () {
var setFocus = function () {
$('.ui-sortable').find('input, textarea').click(function () {
$(this).focus();
});
};
$('.ui-sortable').on('DOMNodeInserted', setFocus);
setFocus();
}, 0);

最佳答案

这应该有效:

$('body').on('.ui-sortable input, .ui-sortable textarea', 'click', function () {
$(this).focus();
});

关于javascript - 避免重复听众,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12750892/

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