javascript - 使 firefox 刷新图像更快

标签 javascript jquery image firefox

我正在做一件事,我需要一个网页来从本地客户端计算机流式传输一系列图像。我在这里有一个非常简单的运行:http://jsbin.com/idowi/34

代码极其简单

setTimeout ( "refreshImage()", 100 );

function refreshImage(){
  var date = new Date()
  var ticks = date.getTime()
  $('#image').attr('src','http://127.0.0.1:2723/signature?'+ticks.toString());
  setTimeout ("refreshImage()", 100 );
}

基本上,我在客户端机器上使用了一个签名板。我们希望签名显示在网页中,并让他们看到自己在网页中签名(pad 没有 LCD 可以直接显示给他们)。所以我设置了一个简单的本地 HTTP 服务器,它获取签名板当前状态的图像并将其发送到浏览器。

这在任何浏览器中都没有问题(在 IE7、8 和 Chrome 中测试过),但在 Firefox 中它非常滞后和跳跃,并且不符合 10 FPS 的速率。有没有人对如何解决这个问题有任何想法?我试过在 javascript 中创建非常简单的双缓冲,但这只会让事情变得更糟。

此外,关于更多信息,Firefox 似乎正在以正确的帧速率执行 javascript,因为在服务器上请求以恒定速度传入。但是图像只是不一致地刷新,从每秒 5 次一直到每秒 0 次(刷新需要 2 秒)

我也尝试过使用不同的图像格式,但结果都是一样的。我尝试过的格式包括位图、PNG 和 GIF(尽管 GIF 在 Chrome 中引起了一个小问题,闪烁)

有没有可能是 Firefox 以某种方式缓存了我的图像,导致了轻微的延迟?不过,我发送了这些 header :

Pragma-directive: no-cache
Cache-directive: no-cache
Cache-control: no-cache
Pragma: no-cache
Expires: 0

最佳答案

延迟可能是由 Firefox 处理 DNS 查询和支持 IPv6 的方式造成的。

尝试 turning off IPv6 lookups看看是否能解决滞后问题。

关于javascript - 使 firefox 刷新图像更快,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2908331/

相关文章:

javascript - 如何更新 localStorage 项目?

javascript - JavaScript 函数声明中的分号是否必要

javascript - 当它处于不可见状态时如何停止更改此 jQuery 简单 slider 中的幻灯片

jquery - 更改滚动背景时 css 和 webkit 出现故障

c# - 在 C# 中缩放图像的好方法是什么?

html - 无论图像比例如何,都生成方形缩略图

javascript - 我的 REST 调用不运行页面的 javascript

javascript - React.js 与 Node.js Rest API

javascript - PhantomJS 无法点击现有元素

android - 处理不同尺寸照片的移动应用程序和服务器的设计