iScroll,如何调用我的卷轴?

时间:2012-11-27 00:56:19

标签: javascript iscroll

iScroll文档显示了典型的iScroll设置,如下所示。

var myScroll;
function loaded() {
    setTimeout(function () {
        myScroll = new iScroll('wrapper');
    }, 100);
}
window.addEventListener('load', loaded, false);

我的问题是如何调用滚动条?如果我使用:

var currentItem = 5;
myScroll.scrollToElement('.nav > li:nth-child('+currentItem+')', 300);

我收到错误。

Uncaught TypeError: Cannot call method 'scrollToElement' of undefined 

2 个答案:

答案 0 :(得分:0)

看起来您在第一个参数中添加了额外的引号。

删除引号,然后尝试将代码更改为以下

myScroll.scrollToElement('.nav > li:nth-child(5)', 300);

如果您希望使查询动态化,请将数字替换为变量并添加加号以连接字符串。

var incNumber = 5;
myScroll.scrollToElement('.nav > li:nth-child('+ incNumber +')', 300);

您的iScroll似乎也会在超时延迟时创建。在实例化库之前是否调用了函数?

答案 1 :(得分:0)

我想您需要使用您为iScroll分配的变量名称:

myScroll.scrollToElement ...

而不是

scroller.scrollTo ...

<强>更新

根据你后面的测试,这显然是一个时间错误。您可以在执行超时功能之前调用myScroll.scrollToElement