单击事件对 Ajax 加载的内容不起作用

use*_*023 4 javascript safari ajax jquery mobile-safari

我正在使用 ajax 从外部 HTML 文件加载内容。不知道为什么在加载内容后,单击事件在任何新加载的元素(ul、li、图像等)上都无法在 safari(移动 safari)中工作。但是,这在 mozilla 中有效。

我无法理解这背后的确切问题。请给我建议解决方案。下面是代码供参考。

注意:我在 jquery ready 函数下使用以下代码。jquery 是问题的原因吗??

var currentBottle = this.title; var request = createRequest(); if (request == null) { alert("无法创建请求"); 返回; } request.onreadystatechange = showContent; request.open("GET", currentBottle + ".html", true); request.send(null);

function showContent() { if (request.readyState == 4) { if (request.status == 200) { document.getElementById("food_scroller").innerHTML = request.responseText; } } }

小智 11

当页面的内容通过 ajax 加载时,事件绑定会中断。您必须使用以下过程在文档中再次绑定事件。

做这个

$(document).on('click', '.classname' ,function (e) {
    // write your logic
});
Run Code Online (Sandbox Code Playgroud)

代替

$('.classname').on('click' ,function (e) {
    // write your logic
});
Run Code Online (Sandbox Code Playgroud)