jquery检查是否每隔500毫秒从ip加载流

时间:2015-11-26 13:06:38

标签: javascript jquery html

我想检查一下我是否在同一网络中连接了我的网络摄像头。 目前我用这个js代码包含它:

document.write('<IMG id="camera" width="' + view_w + '" height="' + view_h + '" SRC="http://192.168.1.195/GetData.cgi?CH=1"');

效果很好!现在我关闭了路由器。几秒钟之后就是溪流。 现在我想每500ms检查一次。当我使用这段代码时:

$(document).ready(function(){
    $('#camera').load(function(){
        alert("loaded");
    });

    $('#camera').error(function(){
        alert("not loaded");
    });
});

效果很好,我在屏幕上显示一个警告窗口(两个事件都有效!)。

现在我将其放入intervall,但它无法正常工作。

$(document).ready(function(){
    setInterval(function(){
        $('#camera').load(function(){
            alert("loaded");
        });

        $('#camera').error(function(){
            alert("not loaded");
        });
    }, 500);
});

最后一个代码段有什么问题?

1 个答案:

答案 0 :(得分:2)

尝试这样的事情:

$(document).ready(function(){

var imgSrc = 'http://192.168.1.195/GetData.cgi?CH=1';

$('#camera').load(function(){
    alert("loaded");
    createTimeout();        
});

$('#camera').error(function(){
    alert("not loaded");
    createTimeout();
});


function changeImgSrc(){
    $('#camera').attr('source', imgSrc + '&_random=' + new Date().getTime());
};

function createTimeout(){
    setTimeout(function(){
        changeImgSrc();
    }, 500)
};

//first execution
changeImgSrc();      
});

我没试过这段代码。