我试图在一个页面上添加2个iScroll实例,但我不认为这是导致这种情况的原因:
function loaded() {
$('.iScrolls').each(function(){
var $this = $(this);
var $id = $this.attr('id');
if( $id ) {
$scrollers[$id] = new iScroll( $id, {
snap: true,
momentum: false,
hScrollbar: false,
onScrollEnd: function () {
$('#indicator > li.active').removeAttr('class');
$('#indicator > li:nth-child(' + ( this.currPageX + 1) + ')').removeAttr('class').addClass('active');
}
});
$('.prev', $this).click(function(){
$scrollers[$id].scrollToPage('prev', 0);
return false;
});
$('.next', $this).click(function(){
$scrollers[$id].scrollToPage('next', 0);
return false;
});
}
});
}
document.addEventListener('DOMContentLoaded', loaded, false);
当" scrollToPage被触发时,我收到错误:
Uncaught TypeError: Cannot read property 'length' of undefined
iScroll.scrollTo iScroll.js:984
iScroll._end iScroll.js:614
iScroll.handleEvent
我的问题是,之前有人遇到过这个并知道是什么原因造成的吗?
问候
答案 0 :(得分:1)
试图在一个隐藏的容器中进行初始化...这不是没有...欢呼!
答案 1 :(得分:0)
刚碰到这个。当我传递jQuery样式“#wrapperID”而不仅仅是元素id“wrapperID”时,结果是一个愚蠢的错误
希望能有所帮助。
答案 2 :(得分:0)
.iScrolls是你的div类名。你能在那个div上创建一个id吗?
示例:
<div class="iScrolls" id="iScrolls">
<div id="main">
<div id="thelist">
// Body part
</div>
</div>
</div>