我正在我的 jQuery 移动网站中动态创建一些按钮。我这样创建它们:
$('#Gallery' + i + ' .gallery').after('<button type="button" class="loadMorePhotos">More Photos...</button>');
然后我创建一个简单的 .click
事件处理程序,如下所示:
$(".loadMorePhotos").click(function(){
alert("ok malaka!");
});
我非常谨慎,NOT 使用 id
属性来识别按钮,因为我有多个按钮,这会把事情搞砸.相反,我使用据我所知应该有效的 class
属性。
但是永远不会执行警报。我在这里做错了什么?
最佳答案
事件委托(delegate):
$(document).on("click", ".loadMorePhotos", function(){
alert("ok malaka!");
});
因为您的元素是动态创建的,所以您必须将点击处理程序绑定(bind)到 DOM 就绪时已经存在的元素(在本例中为 document
)
关于javascript - 多个按钮的一个 .click 事件处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17451660/