当我在每个标签中打开两个带有Nivo Slider的标签时,我发现firebug的网络标签显示每个幻灯片更改中同一图像的多个请购单。它将页面的大小(以mb为单位)和内存使用/分配增加到firefox.exe。过了一会儿,我的电脑变得非常慢,任务监视器中的内存分配高于1GB。
如何复制它: 1-在Firefox中的2个选项卡中打开http://nivo.dev7studios.com/(在3.6~5.0中测试) 2-在第二个标签中打开firebug的网板 3-重新加载第二个标签
答案 0 :(得分:6)
我刚刚在FF 3.6中测试过 - 同样的问题。
查看文件http://nivo.dev7studios.com/scripts/nivo-slider/jquery.nivo.slider.js:84
//Set first background
slider.css('background','url("'+ vars.currentImage.attr('src') +'") no-repeat');
还有第253,262,284行等。它会即时添加背景图像,因此浏览器应该一次又一次地请求它。幸运的是,服务器响应头304未修改。
答案是:NivoSlider。
答案 1 :(得分:2)
我在FF 4.0.1中打开一个标签时出现内存泄漏。 Chrome(12.0.742.100)也是如此,虽然没有FF那么糟糕。
似乎NivoSlider造成了这种泄漏。
答案 2 :(得分:1)
我们在我的工作中对此进行了测试,起初我们看到Firefox重新下载图像,就像原始海报所说的那样。但后来我们意识到了一些事情 - 如果你从未使用Firefox的/ Firebug工具将鼠标悬停在图像上,它就永远不会重新下载图像!
所以换句话说,由于滑块,它看起来没有发生。看起来只有在你开始使用Firefox / Firebug进行调查时才会发生。
所以我不认为这是一个问题。
答案 3 :(得分:1)
我遇到了与内存泄漏相同的问题。 看起来nivo毕竟不是那么棒。
经过一些尝试,我设法显着降低了负荷,至少根据萤火虫。
我做了两件事:
问题仍然没有完全解决,我得到一些奇怪的行为。 我只有4张照片。他们都开始加载。在某些时刻(我不知道原因,通常是第一次显示图像)2张图片再次加载(来自缓存)。在那之后,它工作正常。我把它打开了一个小时,没有新的装载。
总而言之,通过上述变化,我得到了2个额外的负载。与之前的情况相比(每当图像发生变化时都会出现新的负载)并不是那么糟糕。
我仍然无法找到这种行为的原因或解释。也许firefox会释放一些内存,以便不时再次加载图像?