。每隔30秒换一次

时间:2015-05-07 12:56:18

标签: javascript jquery

我试图每隔30秒用另一个div替换div。

我有以下运行但是div没有被替换;

$( ".class1" ).setInterval(function() {
    $( this ).replaceWith('<div class="class2">54</div>');
} 3000);

我做错了什么?

3 个答案:

答案 0 :(得分:2)

您是否尝试更改span的文字?

 setInterval(changeText, 30000);
 function changeText(){
     if($(".class1").text() == "Hello World"){
          $(".class1").replaceWith("<div class='.class1'>My New Div</div>");
     }else{
         $(".class1").replaceWith("<div class='.class1'>Hello world</div>");
     }
 }

答案 1 :(得分:1)

切换文字。您可以使用:

setInterval(function(){
  $('.class1').text($('.class1').text() == ".class1" ? "hello world" : ".class1")
},30000);

<强> Working Demo

答案 2 :(得分:0)

您可以这样使用setInterval()

&#13;
&#13;
$(function() {
  var origText = $('.class1').text(); // cache it here
  
  setInterval(function() {
    var newTxt = $('.class1').text(); // now get the current text in the div
    
    var txt = newTxt != 'Hello World' ? 'Hello World' : origText; // on condition change the text
    $('.class1').text(txt); // change the text here now.
  
  }, 3 * 1000); // replace it as 30 * 1000 = 30 seconds


});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class='class1'>Class 1</div>
&#13;
&#13;
&#13;