我在创建和填充图像轮播的函数中有一些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];
}
}
});
每当我单击一个启动 float 窗口的链接时,该脚本就会运行。
请您参考如下方法:
我发现我需要清除包装器div。在我的函数调用的开始:
document.getElementById('wrapper').innerHTML = "";
似乎可以工作。


