所以我有一个使用jQuery AJAX动态加载内容的系统。我有一些页面,他们可能只有该页面的脚本(在js /文件夹中)。
例如,如果我在索引页面并单击帖子(article.php),帖子将动态地在页面上删除不必要的内容,并在页面上获得'js / article.js'。但问题是,如果我在访问另一个帖子后点击另一个帖子,'js / article.js'脚本将无效。
有没有办法可以执行已在页面上执行过的脚本,这样问题就很容易解决了。如果没有,你有什么想法我可以解决所描述的问题吗?
答案 0 :(得分:1)
答案 1 :(得分:0)
我猜你需要将点击事件附加到新添加的内容。
如果您使用.live()
或.on()
事件处理程序而不是像.click()
那样的经典处理程序,jQuery可以自动为您执行此操作。
答案 2 :(得分:0)
所有脚本和样式声明都将从您加载的内容中删除(因为我记得很清楚,因为jquery 1.4)
正如jeroen所说,你可以使用.live()或.on() 如果您加载的内容包含特定的脚本和CSS,则它们必须位于您必须加载的单独文件中(如Stefan所说) 用于加载脚本的URL可以通过命名约定来识别,或者您可以将其作为不可见的
隐藏在已加载的内容中<a href="..." class="yournamingconventionclassfordynamicscriptsurls" style="display:none"></a>
标记,然后解析加载的内容并加载引用的文件。