我想知道如何触发由父div(因此委托)中动态加载的clicked元素触发或直接加载时触发的唯一Handler。
首先,<a class="manage-lnk>Manage</a>
元素被直接加载,但之后,进一步被动态加载
html
<div id="viewContainer">
<a class="manage-lnk">Manage</a>
</div>
lib.js。
我必须找到此技巧才能在两种情况下都可以使用
$(document).on('click','.manage-lnk',function(){
alert(1);
});
$('.manage-lnk').on('click',function(){
alert(1);
});
我想要的是触发alert(1),尽管该元素是否已动态加载。
((PS:对不起,我是说英语,我会说法语)
触发此:
$('.manage-lnk').on('click',function(){
alert(1);
});
每次您动态添加其中之一:
<div id="viewContainer">
<a class="manage-lnk">Manage</a>
</div>
如果在JS触发后动态加载,则不会附加事件。
将其添加到可以在HTML中动态添加的代码之后立即调用的函数中很有意义:
function addNewHtmlSectionFunctionName() {
//Code to add div dynamically
}
function attachClickEventToManageLnk() {
$('.manage-lnk').on('click',function(){
alert(1);
});
}
$(function() {
addNewHtmlSectionFunctionName();
attachClickEventToManageLnk();
});