Javascript jQuery document.ready()未为动态加载的内容触发
我有一个PHP文件(名为aboutMe.PHP),其中包含一些HTML,如下所示:Javascript jQuery document.ready()未为动态加载的内容触发,javascript,php,jquery,html,Javascript,Php,Jquery,Html,我有一个PHP文件(名为aboutMe.PHP),其中包含一些HTML,如下所示: 我的性别是: 请选择您的性别。 男性 女性 如果我正确理解了您的问题,我相信您可以为.load()函数创建一个回调,如下所示: $("#load-aboutme-here").load("aboutMe.php", null, function() { // Code to be executed when aboutMe.php is loaded. // i.e. The code in
我的性别是:
请选择您的性别。
男性
女性
如果我正确理解了您的问题,我相信您可以为.load()
函数创建一个回调,如下所示:
$("#load-aboutme-here").load("aboutMe.php", null, function()
{
// Code to be executed when aboutMe.php is loaded.
// i.e. The code in aboutMe.js
});
请注意,文档是主页面…而不是您检索的后续文件 早在ajax完成之前,文档就已经准备好了,因此在准备好之后调用的任何
$(document).ready()
都将立即启动。在您的情况下,它将在元素存在之前触发
将脚本标记移动到代码引用的html下面
<div id="aboutme-gender" class="aboutme-block">
.......
</div>
<script type="text/javascript" src="/aboutMe.js"></script>
.......
jQueryready
函数仅在初始页面加载时触发初始domrready
事件时才会启动。jQueryload
不会重新触发此事件。这就是为什么加载后不会发生这种情况的原因-单击页面OK,这似乎可以解决问题,谢谢。我对js编码还比较陌生,了解这一点非常有用,并解决了我的问题。我是否正确地认为可能会因此导致性能下降;屏幕刷新看起来有点延迟,尽管在这个阶段可能是其他原因。应该没有明显的性能影响。从理论上讲,这是肯定的——命中率非常低——但没有明显的效果。这并不能解决当前的问题,因为js似乎根本不运行,不管它在哪里。然而,在原始主页的末尾运行一些js结果是非常有用的!