gpt4 book ai didi

javascript - 动态添加事件监听器到dom

转载 作者:行者123 更新时间:2023-11-30 17:19:44 25 4
gpt4 key购买 nike

我创建了一个小脚本,作为目标,可以根据输入值计算体重指数 (BMI)。脚本如下所示:

var config = {
"imc": {
"weight": {
"selector": "#weight",
"triggers": [
"click",
"focusout",
"keyup"
]
},
"height": {
"selector": "#height",
"triggers": [
"click",
"focusout",
"keyup"
]
},
"result": {
"selector": "#imc",
"triggers": [
"click",
"focusout"
]
}
}
};


$.each( config.imc, function( name, attributes ) {
console.log('adding events to dom elements...');

var selector = $(attributes.selector);

$.each( attributes.triggers, function( index, trigger ) {
selector.on(trigger, function(){
console.log('calculating...');
});
});
});

例如,当用户在某些字段(#weight、#height、#imc)中设置文本时,“正在计算”消息应该显示在控制台中(根据触发器),但这就是问题所在...永远不会打印消息。与另一条消息“向 dom 元素添加事件...”不同,它打印正确。

最佳答案

看来您还没有添加 DOM。你需要在添加监听器之前添加 DOM

例如:

添加 DOM:

 $("<div id='myDiv'>").appendTo(container);

然后添加监听器

 $("#myDiv").on("eventListener",function(){

....

});

关于javascript - 动态添加事件监听器到dom,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25356435/

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