内存泄漏(谷歌浏览器)使用Jquery处理图像

时间:2014-07-13 13:35:56

标签: jquery image google-chrome memory-leaks

我是新手,我遇到内存泄漏问题。 我使用一个名为Leanorama的jquery框架来创建虚拟游览。

我的问题是,当浏览并访问不同的环境时,我的应用程序消耗的内存量增加了200MB。所以只访问五个不同的地方,它将获得至少1GB。谷歌Chrome从不释放内存,页面崩溃,因为(只有当我重新加载页面时才释放内存,但我会再次访问游戏的开头)。

可能有些人和我发现了同样的问题。

这是我的主要js文件
/ *包含初始化虚拟游览所需的所有属性的变量* /

var tour = {
        entrance: entrance,
        museumCenter: museumCenter,
        expo1: expo1,
        expo2: expo2,
        expo3: expo3,
        expo4: expo4,
        expo5: expo5,
        expo6: expo6,
        expo7: expo7,
        expo8: expo8,
        expo9: expo9,
        expo10: expo10,
        expo11: expo11,
        expo12: expo12,
        expo13: expo13,
        expo14: expo14,
        downCorner01: downCorner01,
        middleEntranceCorridor: middleEntranceCorridor,
        downCorner02: downCorner02,
        middleSkeletonCorridor: middleSkeletonCorridor,
        downCorner03: downCorner03,
        middlePosteriorCorridor: middlePosteriorCorridor,
        downCorner04: downCorner04,
        middleSideCorridor: middleSideCorridor,
        dino: dino,
        gallery01: gallery01,
        gallery02: gallery02,
        gallery03: gallery03,
        gallery04: gallery04,
        gallery05: gallery05,
        gallery06: gallery06,
        gallery07: gallery07,
        gallery08: gallery08
    };

/* Initializing the function tour and attributing at the #pano html id */

$('#pano').leanorama(tour.entrance).on('leanoramaHotspotClick', function(e, hotspot) {
    if (hotspot.type == 'nav') $(this).trigger('leanoramaRefresh', tour[hotspot.value]);
});

/* Click event of the map */

$('.map').click(function (){
    $('#pano').leanorama(tour[$(this).attr('value')]).on('leanoramaHotspotClick', 
        function(e, hotspot) {
            if (hotspot.type == 'nav') $(this).trigger('leanoramaRefresh', tour[hotspot.value]);
        }); 
});

/* event to hide/show the map */
$('#pano').dblclick(function (){
    if ($("img").is(":hidden")){
        $("img").show();
    }
    else
        $("img").hide();
});

你知道我怎么能解决它吗?强制Chrome释放以前环境的内存并将内存保留在当前环境中的方法? 提前谢谢。

0 个答案:

没有答案