1

我在drupal中使用jcarousel如下:

jcarousel_add('#jcarousel',
    array('vertical' => false, 'scroll' => 3, 'horizo​​ntalDirection' => $direction,
        'initCallback' => 'slCarousel_initCallback')

    );

现在问一个尽可能简单的问题:如何手动滑动轮播?就像是

jQuery("#jcarousel").jcarousel().next();

顺便说一句,当我运行这个脚本jQuery("#jcarousel").jcarousel().next(); 在萤火虫中,我在萤火虫的控制台中得到了这个

>>> jQuery("#jcarousel").jcarousel().next();
[]

我在萤火虫控制台中也试过这个

var carousel = jQuery("#jcarousel").data('jcarousel');
//警报(轮播);
carousel.next();

并得到

>>> var carousel = jQuery("#jcarousel").data('jcarousel'); carousel.next()
TypeError:轮播未定义

alert(carousel) 的结果是单词undefined

4

3 回答 3

0

你确定轮播的ID是jcarousel?该插件的文档建议jcarousel_add()将类名作为第一个参数。如果是这种情况,您可以将其$( '.jcarousel' )更改为jcarousel_add( "jcarousel", ... ). 检查轮播元素或检查页面源以查看 id 和类。

于 2011-08-15T15:49:15.067 回答
0

你试过了吗:

jQuery('#jcarousel').jcarousel("next");

编辑:不带参数调用 $(foo).jcarousel() 返回一个 jQuery 对象,因此调用 next() 将返回轮播的下一个兄弟。这个函数:http ://api.jquery.com/next/

于 2011-08-15T15:55:24.270 回答
0

ok... i fixed it by creating global variable and then assigning the value of the carousel to it

var global_jc="";
function slCarousel_initCallback(carousel) {
        global_jc=carousel;
....
}

and then wherever i want to use next manually i use this

global_jc.next();
于 2011-08-17T06:45:52.707 回答