小编Ric*_*ich的帖子

Chrome内存/垃圾收集问题

我有Chrome的内存/垃圾回收问题

我正在制作一个照片上传网站,它允许我的客户使用HTML5和文件API拖放照片上传,所以这在IE中不起作用.它只适用于Chrome和FF.我尚未在Safari,Opera中测试过.

我没有使用任何JS框架,我的例子不到80行代码,所以很容易理解.

这是我的例子:http://seesquaredphoto.com/testPreview.html

如果您将一些JPG照片(每个4-5MB)拖放到框中,您将看到预览加载,并且在Windows任务管理器中,您可以看到该窗口的内存使用量攀升.如果单击"清除图像"按钮,图像将被删除.

如果在FF中执行此操作,几秒钟后,内存将返回到预览图像之前的状态.但是在chrome中,内存不会下降.

有任何想法吗?我做错了什么或这是一个铬虫?

谢谢.如果您不想查看上面链接的源代码,请输入以下代码:

Javascript:

var upload = {        
    uploadFiles : function(event) {
        var files = event.dataTransfer.files;
        event.stopPropagation();
        event.preventDefault();

        var imageType = /image.*/;
        for (var x = 0; x < files.length; x++) {
            var file = files.item(x);
             if (!file.type.match(imageType) || file.fileName.toUpperCase().indexOf(".JPG")!=file.fileName.length-4) {  
               continue;  
             }      

            var s = document.createElement("span"); 
            s.className = "imgS";   
            var img = document.createElement("img");  
            img.className = "preview";  
            img.src = "";  

            s.appendChild(img);
            document.getElementById("DDCont").appendChild(s);
            loadPreview(img,file);
        }
    }
}; 
function loadPreview(img,file){
    var reader = …
Run Code Online (Sandbox Code Playgroud)

javascript memory garbage-collection google-chrome

2
推荐指数
1
解决办法
3191
查看次数