【发布时间】:2012-09-29 16:45:44
【问题描述】:
我有一个专为移动设备设计的网页,大部分数据通过 AJAX 请求加载到其中并使用 jQuery 附加到 BODY,到目前为止它工作得很好。但是,当我尝试附加一个点击监听器时,以下监听器不适用于任何浏览器
$('[id^="the_content"]').click(function () {
...
});
我已经通过使用 On() 方法解决了这个问题。以下代码可在所有浏览器上完美运行(在 Chrome、FF、IE、Safari for windows 上测试)。构建浏览器除外。
$(document).on("click",'[id^="the_content"]',function() {
...
});
请注意,这些侦听器确实适用于未通过 JS/jQuery 附加的数据
请注意,我的代码完全没有错误地通过了 W3C HTML5 验证。
有人遇到过这样的问题吗?
div 示例:
<div id='the_content_id_61'>...</div>
【问题讨论】:
-
何时添加
$.click()处理程序?在页面加载?或者每次您使用 Ajax 获得新内容时, 您已将其附加到 DOM 之后? -
我都试过了,它们都不起作用