0

我在创建和填充图像轮播的函数中有一些 javascript。在前 5 或 6 次在弹出窗口中激活它后它工作正常,但最终它使浏览器崩溃。我认为存在某种泄漏,例如其中的某些内容需要在再次创建之前被删除。我知道这是轮播,因为如果我去掉脚本的那部分,它就不会崩溃了。

这是轮播脚本:

/* carousel */

var carousel,
el,
i,
page,
slides;

carousel = new SwipeView('#wrapper', {
                         numberOfPages: slides.length,
                         hastyPageFlip: true
                         });

// Load initial data
for (i=0; i<3; i++) {
    page = i==0 ? slides.length-1 : i-1;

    el = document.createElement('span');
    el.innerHTML = slides[page];
    carousel.masterPages[i].appendChild(el)
}

carousel.onFlip(function () {
                var el,
                upcoming,
                i;

    for (i=0; i<3; i++) {
        upcoming = carousel.masterPages[i].dataset.upcomingPageIndex;

        if (upcoming != carousel.masterPages[i].dataset.pageIndex) {
            el = carousel.masterPages[i].querySelector('span');
            el.innerHTML = slides[upcoming];
        }
    }
});

每次我单击启动浮动窗口的链接时,此脚本都会运行。

4

1 回答 1

0

我发现我需要清除我的包装器 div。在我的函数调用开始时:

document.getElementById('wrapper').innerHTML = "";

似乎工作。

于 2012-07-05T19:04:38.617 回答