Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在特定时间后通过ajax加载并替换该内容?_Javascript_Jquery_Html_Ajax_Setinterval - Fatal编程技术网

Javascript 如何在特定时间后通过ajax加载并替换该内容?

Javascript 如何在特定时间后通过ajax加载并替换该内容?,javascript,jquery,html,ajax,setinterval,Javascript,Jquery,Html,Ajax,Setinterval,我对ajax有一个问题: 场景是:单击“trigger”,通过ajax将“noti.html”的第一个div中的内容加载到“#topNoti”中,然后在特定时间后将加载的内容更改/替换为“noti.html”的第二个div,依此类推,直到最后一个div内容未加载为止 noti.html: ` .... <div id="inq"> <div id="div1">This is first div</div> <div

我对ajax有一个问题:

场景是:单击“trigger”,通过ajax将“noti.html”的第一个div中的内容加载到“#topNoti”中,然后在特定时间后将加载的内容更改/替换为“noti.html”的第二个div,依此类推,直到最后一个div内容未加载为止

noti.html:
  `  ....
     <div id="inq">
     <div id="div1">This is first div</div>
     <div id="div2">This is second div</div>
     <div id="div3">This is third div</div>
     <div id="div4">This is fourth div</div>
    ...
     <div id="div24">This is last div</div>

     </div>
    ...
但这段代码加载所有div。有人能给我一个一个加载“div”的解决方案吗

我只是修改了我的脚本n,用这个我可以做我想做的。 代码是:

那么,有人能改进这段代码吗

感谢n问候

使用以下代码:


像这样的东西应该可以

var index=0;

function Next() {
    //Hide old div (if any)
    if(index>0) {
        document.getElementById('part'+index).style.display='none';
    }
    index++;
    document.getElementById('part'+index).style.display='block';
    if(index<4) {
        setTimeout(Next, 1000);
    }
}
var指数=0;
函数Next(){
//隐藏旧分区(如果有)
如果(索引>0){
document.getElementById('part'+index).style.display='none';
}
索引++;
document.getElementById('part'+index).style.display='block';

if(indexSo)你的问题是什么?使用click handler或load()jquery方法或timeout?你尝试过什么?我想这正是在看第三个例子时使用的…这是完全相同的东西我对jquery没有深入的了解,所以我只是简单地使用“$('.trigger')。单击(function(){$('#topNoti).load('noti.html#a'));”因此,它加载noti.html的第一个div。但不知道如何用第二个div内容替换它,并继续此过程,直到最后一个div内容未被替换。我使用“setTimeout”函数实现了此目标,但我的setTimeout函数的缺点是,对于每个div,我必须使用单独的函数。noti中有26个div.html,所以26个setTimeout函数:(我认为你的问题完全可以通过谷歌搜索(这就是为什么我投了否决票)。一些基本的东西应该会有帮助:但是@rajesh我必须通过ajax从不同的html文件加载内容。如何使用此函数通过ajax获取div的内容一次加载所有div,然后根据需要显示…是吗?如果是,问题到底出在哪里?
$(".trigger").click(function(){
var index=1;
$m=$("#inq").find("div"+index);
setInterval(function(){
$("#topNoti").load("noti.html",$m);
index=index+1;
If(index==25){ index=1; }
},10000);
});
 Var index=0;
 SetInterval(function(){
 $("#topNoti").load("noti.html #div"+index);
 index=index+1;
 If(index==25){index=0;}
 },2000);
var index = 0;
var count=$("#topNoti div").length;
$("#topNoti div").hide().eq(index).show();
setInterval(function() {
     $("#topNoti div").hide().eq(index).show();
     index = index + 1;           
     if (index == count) {
         index = 0;
      }
}, 1000);
var index=0;

function Next() {
    //Hide old div (if any)
    if(index>0) {
        document.getElementById('part'+index).style.display='none';
    }
    index++;
    document.getElementById('part'+index).style.display='block';
    if(index<4) {
        setTimeout(Next, 1000);
    }
}
<div id="part0" style="display:none;">Hi</div>
<div id="part1" style="display:none;">Some</div>
<div id="part2" style="display:none;">Message</div>
<div id="part3" style="display:none;">Across</div>
<div id="part4" style="display:none;">Divs</div>