iScroll - 属性未定义错误

时间:2012-09-07 07:15:49

标签: iscroll4

我试图在一个页面上添加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

我的问题是,之前有人遇到过这个并知道是什么原因造成的吗?

问候

3 个答案:

答案 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>