尝试使用Java脚本重新加载图像时,我失败了2天。 希望你能帮忙! 在定义的7个secunds之后显示图像但没有改变...
它不是服务器端问题,而我可以在wireshark中看到数据甚至没有被浏览器请求... 有谁知道我的问题可能在哪里? 请参阅下面的代码以供参考
<html>
<!DOCTYPE html>
<html lang="de-DE">
<head>
<bodyonload="DispayImage()">
<img src="/img/dynamic_live_1.jpg" width="600" height="450" name=Cam>
<script language="JavaScript>
var imageUrl = document.Cam.src;
var random = new Date().getTime();
var delay = 7000;
var counter = 0;
var buffer = new Image;
function DisplayImage()
{
document.Cam.src = buffer.src;
LoadNextImage();
}
function LoadBuffer ()
{
var trickname = imageUrl;
++counter;
trickname += "?counter=" + (random + counter);
buffer.src = trickname;
buffer.onload = DisplayImage;
}
function LoadNextImage()
{
setTimeout("LoadBuffer()", delay);
}
LoadNextImage();
</script>
</body>
</html>
答案 0 :(得分:0)
乍一看,你的“setTimeout”调用似乎是错误的:
尝试
function LoadNextImage()
{
setTimeout(function() {LoadBuffer()}, delay);
}
另外,你的body.onload有一个错误的调用,它显示“DispayImage”而不是“DisplayImage”,但这可能是你的复制粘贴错误。
编辑:我自己测试了更正后的代码,并且在这里工作(使用了一些本地图像)。我发现的最后一个错误是你没有关闭“语言”-tag:
<script language="JavaScript>
应该是
<script language="Javascript">
或者,更好的是,不需要“语言”标签,所有浏览器在使用“脚本”时都默认使用javascript:
<script>/*Some code here*/</script>