我有一些代码显示查看特定twitch.tv流的人数。它加载一次并显示它。如果有人想要更新观众数量,那么他们必须刷新页面。有没有办法每隔几秒刷新一次数字,这样人们就不必刷新页面了?代码在下面(它的div id =我要更新的查看者)
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js" charset="utf-8"></script></head></html>
<script type="text/javascript" >
var channelName = "crossgamechat";
function showViewers(a){
alert(a.viewers_count);
}
$.getJSON("http://api.justin.tv/api/stream/summary.json?channel="+ channelName + "&jsonp=?", function(a){document.getElementById("viewers").innerHTML += a.viewers_count;});
;
</script>
<div class="clear"></div>
<div style="width: 100px;">
<div id="viewers" style="float: left"></div>
<div id="blank" style="float: left; width: 5px;"> </div>
<div id="divtext" style="float: left;">Viewers</div>
<br style="clear: left;"/>
</div>
</head></html>
答案 0 :(得分:0)
您可以使用setInterval
以设定的间隔运行特定功能。
演示:http://jsfiddle.net/SO_AMK/tt5NH/
jQuery:
window.setInterval(function() {
$.getJSON("http://api.justin.tv/api/stream/summary.json?channel=" + channelName + "&jsonp=?", function(data) {
document.getElementById("viewers").innerHTML = data.viewers_count;
});
}, 2000);
P.S。您的jQuery库已过时,并且您有一些语法错误。
答案 1 :(得分:0)
最简单的方法是使用setInterval方法
window.setInterval(function () {
$.getJSON("http://api.justin.tv/api/stream/summary.json?channel="+ channelName + "&jsonp=?", function(a){document.getElementById("viewers").innerHTML += a.viewers_count;});
}, 5000);
https://developer.mozilla.org/en-US/docs/DOM/window.setInterval
答案 2 :(得分:0)
您可以在setInterval中使用ajax调用来执行此操作。将获取或发布请求发送到返回要显示的号码的页面,然后在该呼叫成功时更新span / div或显示该号码的任何内容