内存泄漏-定期下载映像
Memory leak - periodically image download
我创建了一个代码:
var camImage = camImage || {};
camImage.getImg = function() {
var currDate = new Date();
var image = null;
var link = 'http://localhost/picture.php?rand='+currDate.valueOf();
$.ajax({
url: link,
success: function(){
$('#camera img').eq(0).remove();
image = $('<img />').attr('src', link);
$('#camera').append(image);
link = null;
image = null;
currDate = null;
}
});
};
$(document).ready(function(){
setInterval(camImage.getImg, 1000);
});
这段简单的代码定期获取新图像并将其添加到DOM中。每下载一张图片,浏览器的内存使用量就会增加。这段代码会导致内存泄漏吗?
Ajax请求是不必要的。只要将img src设置为一个新的URL就足够了:
camImage.getImg = function() {
var src = 'http://localhost/picture.php?rand=' + (new Date()).valueOf();
$('#camera img:first').detach().attr('src', src).appendTo('#camera');
}
我使用detatch()
而不是remove()
,因为这样可以保留原始DOM元素以供重用。
改变函数并没有多大作用:
camImage.getImg = function() {
var src = 'http://localhost/picture.php?rand=' + (new Date()).valueOf();
$('#camera img:first').detach().attr('src', src).appendTo('#camera');
}
内存使用率仍在增加。这是由于内存泄漏在javascript或有其他原因?
相关文章:
- 如何使jQuery中的悬停函数单独应用于数据库映像
- 无法在Safari中加载跨源映像(来自CloudFront)
- 有没有一种方法可以从chrome'的存储映像
- 如何在不必维护每个文件的两个版本的情况下,将通用JavaScript和映像部署到两个不同的EAR
- 在使用 Django 静态文件时动态设置映像时,只有绝对路径才能与 jquery 一起使用
- 获取我的数组中的每个 ID 映像 src
- 映像选取器在初始化时预选项
- 循环映像 IE7 问题
- 本地映像对象未在Javascript中正确初始化
- PHP抓取没有扩展的远程映像
- 如何在ASP.NET Response.BinaryWrite生成的Javascript中处理字节数组映像
- 如何确保在 HREF 触发之前下载并显示映像
- 使用 Node.js 下载多个映像
- 如何使用科尔多瓦文件传输下载 base 64 映像
- 对下载的 S3 映像的 URI 进行编码
- 如何通过右键单击另存为方法下载图像时自动重命名远程映像名称
- Base64映像下载:损坏的文件
- 内存泄漏-定期下载映像
- React Native:从Firebase Storage下载映像
- 下载 base64 编码映像 IE9