我有一个使用jQuery刷新.load()的div。一旦它被刷新,新的内容出现在div中。然而,新内容中包含jQuery,并且它不起作用,即使该内容加载到自己的页面上时它仍然有效。在具有刚加载了jQuery的内容的div中实现jQuery .load()
该div也在父窗口中,但是刷新div的jQuery代码位于iframe中。代码调用top.document(父窗口)来刷新iframe外部的div。
我将展示完整的代码在这里:
这就是所谓test.php的主页。它只是一个简单的iframe,在它下面是代码告诉它在iframe中刷新的div。
<html>
<head>
</head>
<body >
<iframe src="test2.php" width="400" height="400" frameborder="3"></iframe>
<div id="target">This text will be replaced.</div>
</body>
</html>
这里是test2.php这是iframe内,所以你可以方便地按一个链接,激活下一个页面,其接通jQuery代码加载页面时,它只是开始的iframe页面。
<html>
<head>
</head>
<body>
<a href="test3.php">Click Me, if the div below reloads with the jqery content it worked!</a>
</body>
</html>
这里是页test3.php与刷新的iframe外的DIV jQuery代码。 .load()起作用,但.get()不起作用。我试图用.get()和.getscript()调用jQuery,但那确实奏效。我也尝试将它们封装在.bind().on().live()中,但是如果您知道以某种方式使用这些方法的方式,那么您可以自由地将它们发布。
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script type="text/javascript">
$('#target', top.document).load("test4.php");
$('#target', top.document).get('testb.js');
</script>
</head>
<body>
Sent
</body>
</html>
这是test4.php,它是在刷新后加载到div中的新内容。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<p>....Polo</p>
<script type="text/javascript" src="testb.js"></script>
现在这里是jQuery的我试过DIV中实现,这里面是什么页面test3.php和test4.php testb.js。我打算做更复杂的代码,但由于没有jQuery工作,我决定简化它,直到jQuery不工作的原因可以被发现。
var myvariable = "Marco";
$("p").prepend(myvariable);
非常感谢您给予的帮助!
我刚才试图与谷歌浏览器,但它没不为我工作。谢谢你试图帮助,但! – Christie 2011-12-20 23:47:58