0

我有两个 div 每隔几秒就会自动刷新一次,内容是使用 jquery .load() 加载的

    <script>
    $(document).ready(function(){$("#a1").load("a1.php");
    var refreshId=setInterval(function(){
$("#a1").load('a1.php?randval='+Math.random());},10000);$.ajaxSetup({cache:false});});

    $(document).ready(function(){$("#b2").load("b2.php");
    var refreshId=setInterval(function(){
$("#b2").load('b2.php?randval='+Math.random());},20000);$.ajaxSetup({cache:false});});
    </script>


<div id='a1'></div>
<div id='b2'></div>

我需要插入到 div b2 的内容才能使用 jquery 操作 div a1 中的内容。

例如,内容加载到 div 1 a1.php

<span class="test">Hello World</span>

例如加载到 div 2 b2.php 中的内容

<script type="text/javascript">
$(document).ready(function(){
$('.test').text('Good Bye cruel world');
});
</script>

但这似乎不起作用......希望这是有道理的..有什么想法吗?

4

1 回答 1

1

您的 $(document).ready... 代码在 .load() 完成之前运行,因为加载将在稍后完成。这意味着当它运行时,还没有“test”类的跨度。

您必须在第一次加载(到 a1)完成后执行第二次加载。为此, load 将允许您向它传递一个函数,以便在加载完成时调用(jQuery 加载文档):

$("a1").load("contentLocation.php", null, function () {
  $("a2").load("nextContentLocation.php");
});

这将导致 jQuery 将内容加载到 a1 中,并在完成后将内容加载到 a2 中。

于 2012-06-20T13:21:20.610 回答