Javascript状态循环

Javascript status loop

本文关键字:循环 状态 Javascript      更新时间:2023-09-26

好的,javascript中的一件简单的事情,我甚至在网上搜索都无法解决。我想我甚至找到了正确的东西,但没能放在正确的地方。

这个代码告诉我流是在线还是离线。但是我该如何处理状态并保持每5秒更新一次?

$(function () {
    $.ajax({
        type: 'GET',
        url: "http://xmychannelx.api.channel.livestream.com/2.0/livestatus.json?callback=?",
        dataType: 'jsonp',
        success: function (jsonp) {
            // parse the JSON data on success
            var channel = eval(jsonp);
            liveChannel = channel.channel.isLive;
            if (liveChannel == true) {
                document.getElementById('mydiv').innerHTML = '<p style="color: #00FF00">Online!</p>';
            } else {
                document.getElementById('mydiv').innerHTML = '<p style="color: #C0C0C0">Offline!</p>';
            }

        }
    });
});

示例:

var myAjaxCall = function() {
$.ajax({
    type: "GET",
    url: options.feedUrl,
    dataType: "xml",
    async:options.sync,
    success: function(xml) {
        // todo
    }
};
var ResInterval = window.setInterval(myAjaxCall, 60000); // 60 seconds

停止:

window.clearInterval(ResInterval);

使用设置超时功能

setTimeout(function(){
  //your function
  foo();
},1000);

试试这个:

function checkStatus() {
    $.ajax({
        type: 'GET',
        url: "http://xmychannelx.api.channel.livestream.com/2.0/livestatus.json?callback=?",
        dataType: 'jsonp',
        success: function (jsonp) {
            // parse the JSON data on success
            var channel = eval(jsonp);
            liveChannel = channel.channel.isLive;
            if (liveChannel == true) {
            document.getElementById('mydiv').innerHTML = '<p style="color: #00FF00">Online!</p>';
             } else{
                document.getElementById('mydiv').innerHTML = '<p style="color: #C0C0C0">Offline!</p>';
            }
        }
    });
}
$(function() {
    setInterval(checkStatus, 5000);
});

这将每5000毫秒(5秒)调用一次函数checkStatus