Javascript 在jQuery中创建DOM之前绑定事件 var-thumbDom=''; 对于(变量i=0;i
我知道代码不能工作,因为事件是在dom追加之前绑定的。 但是,在附加到dom树之前,是否仍然可以将click事件绑定到许多动态dom 我不想使用$(文档)。在('单击,…)上,我想将事件绑定到子节点 任何建议都会有帮助,谢谢~Javascript 在jQuery中创建DOM之前绑定事件 var-thumbDom=''; 对于(变量i=0;i,javascript,jquery,events,append,Javascript,Jquery,Events,Append,我知道代码不能工作,因为事件是在dom追加之前绑定的。 但是,在附加到dom树之前,是否仍然可以将click事件绑定到许多动态dom 我不想使用$(文档)。在('单击,…)上,我想将事件绑定到子节点 任何建议都会有帮助,谢谢~ 您可以尝试以下方法: 定义一个 设置其id和innerHtml 用一个onclick事件绑定它(提醒它的id) 将其附加到“#父项”项 $(函数(){ 对于(变量i=0;i
您可以尝试以下方法:
- 定义一个
- 设置其
和id
innerHtml
- 用一个
事件绑定它(提醒它的onclick
)id
- 将其附加到“#父项”项
$(函数(){
对于(变量i=0;i<10;i++){
$("")
.attr(“id”,“div-”+i)
.html(“DIV-”+i)
。单击(函数(){
警报($(this.attr(“id”));
})
.附于(“母公司”);
}
});
我不想使用$(document)。在('单击,…)上,我想将事件绑定到子节点。
为什么?事件委派正是这里要使用的模式。在之后调用bindEvent
。append
但是@rorymcrossan是正确的,因为我找不到任何理由来避免这种模式。。。
var thumbDom = '';
for (var i = 0; i < 10; i++) {
thumbDom = thumbDom + '<div id = "div-" ' + i + '>DIV-'+ i +'</div>';
bindEvent(i);
}
$('#parent').append(thumbDom);
function bindEvent(i){
$('#div-' + i).click(function(event) {
alert(i);
});
}
$(function() {
for (var i = 0; i < 10; i++) {
$("<div></div>")
.attr("id", "div-" + i)
.html("DIV-" + i)
.click(function() {
alert($(this).attr("id"));
})
.appendTo("#parent");
}
});