标签: setinterval

从自执行函数调用setInterval

以下调用setInterval的方法似乎适用于Firefox 3.5和Chromium 10.0,但不适用于Firefox 4.

var setInterval;
(function runmenow () {
  setInterval(function () { document.write('hello<br />'); }, 1000);
}());
Run Code Online (Sandbox Code Playgroud)

Firebug告诉我"setInterval不是函数".为什么在这种情况下setInterval不可用?

javascript setinterval firefox4

0
推荐指数
1
解决办法
669
查看次数

如果调用两次,setInterval()将不会停止

我要做的是制作滑出面板,但这里是我遇到的问题的简化示例.

myCount = document.getElementById("counter")
myCount.onclick = startCount;
count = 0;

function startCount() { 
    timer = setInterval("countToTen()", 200);   
}

function countToTen() {

    count++;
    myCount.innerHTML = count;

    if (count >= 10) {
        clearInterval(timer);
    }
}
Run Code Online (Sandbox Code Playgroud)

如果单击一次,它的效果很好.如果你双击(并且我们不能相信用户只能在他们应该的时候点击),那么计数器将永远持续下去.我猜两个计时器已经制作完成,但是Firebug显示的计时器始终具有相同的ID.那么当setInterval被调用两次时,如何正确使用clearInterval?

javascript timer setinterval

0
推荐指数
1
解决办法
3535
查看次数

使用setInterval()每30秒更新一次时间戳

我有一个像这样的帖子列表:

<ul>
    <li>
       <p class="post" id="432">This is a post</p>
       <p class="timestamp">5 minutes ago</p>
    </li>
    <li>
       <p class="post" id="589">This is another post on the site</p>
       <p class="timestamp">1 hour ago</p>
    </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

我想每30秒更新一次时间戳(很像facebook时间戳)setInterval().

function update_timestamps(){


    $('.timestamp').ajax({
        type    : 'POST', 
        url     : '/ajax/refresh_timestamp', 
        data    : { 'post_id' : $(this).closest('li').find('p.post').attr('id') },          
        success : function(data){ 
            $(this).html(data);
        }
    });

}

setInterval(update_timestamps(), 30000);
Run Code Online (Sandbox Code Playgroud)

我的.ajax()函数显然有问题,或者我根本不应该使用ajax()?

javascript jquery setinterval

0
推荐指数
1
解决办法
5375
查看次数

jQuery setInterval没有循环

我有一个我想要循环的函数.我发现最简单的方法是使用setInterval.当我尝试这个时,该功能只运行一次.请告诉我哪里出错了.干杯

function empMove() { $('.emp-wrap').css('margin-top', '-100px')};

setInterval(empMove, 2000);
Run Code Online (Sandbox Code Playgroud)

我有一个多行的div,我想一次只显示一个,因此我每次都会减少margin-top.

javascript jquery loops setinterval

0
推荐指数
1
解决办法
251
查看次数

JavaScript setInterval只运行一次

我试图让HTML页面使用JavaScript的setInterval函数每秒更新一个包含文本文件内容的textarea.但是,setInterval调用中的函数似乎只运行一次.

使用Javascript:

// Send a GET request to the given location
function sendRequest(location, nonblocking) {
    var xmlhttp = new XMLHttpRequest();
    xmlhttp.open("GET", location, nonblocking);
    xmlhttp.send();
    return xmlhttp.responseText;
}

// Refresh the communication log
function refreshLog() {
     document.getElementById("comm_log").value = sendRequest("src/log.txt", false);
}

window.setInterval(refreshLog, 1000);
Run Code Online (Sandbox Code Playgroud)

请求不是异步的,因为文本文件永远不会很长,这是我试图快速拼凑的东西.

HTML:

<html>
<head>
<style type="text/css">
textarea {
    width: 98%;
    height: 80%;
    resize: none;
    font-family: "Courier New";
}
</style>

<script type="text/javascript" src="src/script.js"></script>

</head>

...

<textarea id="comm_log" readonly></textarea>

...

</html>
Run Code Online (Sandbox Code Playgroud)

有人有想法吗?

html javascript ajax timer setinterval

0
推荐指数
1
解决办法
753
查看次数

单击按钮时,ClearInterval未定义

假设我有几个按钮,当它们被点击时它们会触发某个setInterval,但是当我点击不同的按钮时,前一个setInterval没有清除或它说它是未定义的.

例:

$("#button1").click(function () {

        var url = "xxx";
        var min = "yyy";

        getGraphCredentials3(min,url);

        var onehour = setInterval(function () {
                getGraphCredentials3(min,url);
        }, 5000);


        clearInterval(twohour);  

});


$("#button2").click(function () {

        var url = "zzz";
        var min = "uuu";

        getGraphCredentials3(min,url);

        var twohour = setInterval(function () {
                getGraphCredentials3(min,url);
        }, 5000);


        clearInterval(onehour);      
});
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?

非常感激

javascript jquery setinterval clearinterval

0
推荐指数
1
解决办法
120
查看次数

SetInterval不从interval开始递增

haha = 0;
function dodat(){
haha++;
code here...
}
setInterval(function(){
dodat();
}, 1500-haha);
Run Code Online (Sandbox Code Playgroud)

这很奇怪,似乎时间实际上并没有被添加到setinterval ...

这是我的代码,SetInterval在线启动57,功能dodat():

<script src="//code.jquery.com/jquery-1.10.2.min.js"></script>

<!DOCTYPE html>

<body onkeypress="pretend();">
<span id="money">25</span>$ - <span id="lives">100</span>/100 lives
<br><br>
<span style="background-color:#2cafe4;cursor:pointer;width:1000px;height:175px;overflow:hidden;position:relative;display:block;" id="track"></span>
<br>
<span id="divthing" style="position:relative;display:block;"></span>


<script>
    money = 25;
    lives = 100;
    mycars = {};
    original = 0;

    function doofus() {
if($("div:first").offset().left > 1000){
        $("div:first").remove();
        lives = lives-1;
        document.getElementById("lives").innerHTML = lives;
}
}
haha = 0;
    function dodat() {
    haha = haha+100;
            var btn = …
Run Code Online (Sandbox Code Playgroud)

javascript jquery settimeout setinterval

0
推荐指数
1
解决办法
175
查看次数

这些代码之间有什么区别?

有什么区别:

k = setInterval(function(){loop();},100);
Run Code Online (Sandbox Code Playgroud)

k = setInterval(loop(),100);
Run Code Online (Sandbox Code Playgroud)

为什么第二个运行一次,比如setTimeout()函数和第一个每1/10秒运行一次?

javascript loops settimeout setinterval

0
推荐指数
1
解决办法
53
查看次数

我需要帮助理解setInterval() - 这段代码的行为并不像我认为的那样

我有这个代码:

var myVar = setInterval(myTimer(13), 1000);

function myTimer(x) {
  console.log(x);
}
Run Code Online (Sandbox Code Playgroud)

目前,它只打印一次13到控制台,但我认为它应该每秒打印一次,对吧?除非我不理解它是如何工作的.我只是想在最基本的层面上分解它.

javascript setinterval

0
推荐指数
1
解决办法
44
查看次数

停止在角度连续调用函数

我正在开发一个有角度的应用程序。作为它的一部分,我每10秒钟调用一次函数,该函数进行一次API调用。

我的功能看起来像

  getData(ahu) {
    console.log('In get data function')
    console.log(ahu)
    setInterval(() => {
      this.getDataRealTime(ahu);
    }, 10000);
  }
Run Code Online (Sandbox Code Playgroud)
<button mat-flat-button (click)="getData(L1)">L1</button>
<button mat-flat-button (click)="getData(L2)">L2</button>

Run Code Online (Sandbox Code Playgroud)

因此,当我单击“ L1”按钮时,数据每10秒就会持续发送L1。现在,当我单击L2时,L2的数据到来,但是来自L1的数据没有停止。我只需要L1的数据。有人可以帮我弄这个吗?

谢谢

javascript api setinterval angular

0
推荐指数
1
解决办法
50
查看次数