以下调用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不可用?
我要做的是制作滑出面板,但这里是我遇到的问题的简化示例.
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?
我有一个像这样的帖子列表:
<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()?
我有一个我想要循环的函数.我发现最简单的方法是使用setInterval.当我尝试这个时,该功能只运行一次.请告诉我哪里出错了.干杯
function empMove() { $('.emp-wrap').css('margin-top', '-100px')};
setInterval(empMove, 2000);
Run Code Online (Sandbox Code Playgroud)
我有一个多行的div,我想一次只显示一个,因此我每次都会减少margin-top.
我试图让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)
有人有想法吗?
假设我有几个按钮,当它们被点击时它们会触发某个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)
有人可以帮忙吗?
非常感激
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) 有什么区别:
k = setInterval(function(){loop();},100);
Run Code Online (Sandbox Code Playgroud)
和
k = setInterval(loop(),100);
Run Code Online (Sandbox Code Playgroud)
为什么第二个运行一次,比如setTimeout()函数和第一个每1/10秒运行一次?
我有这个代码:
var myVar = setInterval(myTimer(13), 1000);
function myTimer(x) {
console.log(x);
}
Run Code Online (Sandbox Code Playgroud)
目前,它只打印一次13到控制台,但我认为它应该每秒打印一次,对吧?除非我不理解它是如何工作的.我只是想在最基本的层面上分解它.
我正在开发一个有角度的应用程序。作为它的一部分,我每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 ×10
setinterval ×10
jquery ×4
loops ×2
settimeout ×2
timer ×2
ajax ×1
angular ×1
api ×1
firefox4 ×1
html ×1