3

我正在开发网络摄像头应用程序,该应用程序在浏览器图像上显示摄像头图像,每秒刷新一次。它在 chrome 中运行良好,而在其他浏览器中则无法运行。下面是我使用的java脚本代码。请建议是否有人有解决方案。提前致谢。

<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<script type="text/javascript">
    var access_point = "http://dogcity.viewmydog.com/cam0.jpg";
    function initCamera()
    {
        document.getElementById('main_image').src =access_point;
        setInterval(function(){refreshImage()},1000);
    }

    function refreshImage()
    {
        document.getElementById('main_image').src =access_point;
    }
</script>   
</head>  
<body onload="initCamera()">
<div class="innerDiv" id="innerDiv">
<img class="camImage" id="main_image" src="" width="320" />
</div>
</body>
4

4 回答 4

0

您可以通过在提供图像的 src 时传递一个额外的变量来强制浏览器刷新图像

像这样更改刷新功能

function refreshImage()
{
    var mainimage = document.getElementById('main_image');
    d = new Date();
    mainimage.src = access_point + d.getTime();
}
于 2013-09-18T04:40:16.973 回答
0

我正在研究它。但我认为您应该获取有关服务器的信息。他们如何处理请求。以便您可以相应地请求。因为我没有从浏览器端找到任何方法来解决这个问题。

于 2013-09-18T04:32:44.407 回答
0

如果变量access_point没有改变,我认为浏览器不会尝试刷新图像。在设置真实 URL 之前尝试设置一个虚拟(或空)URL,以触发刷新。

于 2013-09-17T06:20:44.783 回答
0

您的 javascript 代码运行正常。问题是浏览器缓存图像。因此,如果传入具有相同名称的新图像,您将不会看到它发生变化。您可以将数字连接到图像 url,也可以使用 no-cache。

于 2013-09-17T06:26:20.070 回答