你說你這樣做是爲了學習插件如何工作..如果你在新版本中調用$('#mycaousel').jcarousel('stopAuto')
,它會返回undefined,因爲它並不打算被鏈接。
的jCarousel函數接受一個「選項」:在舊版本中,它因爲在OLDSKOOL版本打算在這是可鏈接的插件開發者,這意味着你也許可以做這樣的事情,$('#mycaousel').jcarousel('stopAuto').jcarousel('startAuto')
返回元素本身對象,它允許你在一個對象中指定可選的參數,例如:{scroll: 1}
如果沒有閱讀關於這個舊版本的任何文檔並查看代碼,我會假設你可以提供'0'到'auto'可選參數,這將關閉自動滾動。現在你有自動設置爲15,這意味着它應該自動滾動1.5秒後
試試這個:
jQuery(document).ready(function() {
jQuery('#showcaseHolder').jcarousel({
scroll:1,
itemLoadCallback: function (carousel, state) {
JQUERY_CARA_LEFT = carousel;
},
auto: 0, /* was auto: 15 */
wrap:'both'
});
jQuery('#showcaseHolderRight').jcarousel({
scroll:1,
itemLoadCallback: function (carousel, state) {
JQUERY_CARA_RIGHT = carousel;
},
auto: 0, /* was auto: 15 */
wrap:'both'
});
});
注意:您也可以卸載auto: 0
,因爲如果你不提供可選的「自動」帕拉姆它默認爲「0」
UPDATE(基於脫評論):
我可以告訴你答案,但我想解釋我是如何得到這樣的:
在jcarousel.js源,這是關鍵部分:
// Create shortcut for internal use
var $jc = $.jcarousel;
...
$jc.fn.extend({
...
startAuto: function(s) { ... }, /* s = number of seconds to autoscroll by */
stopAuto: function() { ... }
...
這意味着 'startAuto(S)' 和 'stopAuto()' 是的jCarousel對象的參數。
因爲在你的代碼,當你實例化你的jCarousel對象你把一個在VAR JQUERY_CARA_LEFT,另一個在JQUERY_CARA_RIGHT,這是你需要使用的格式:
要隨時開始:
JQUERY_CARA_LEFT.jcarousel.startAuto(15);
// or
JQUERY_CARA_RIGHT.jcarousel.startAuto(15);
,並停止在任何時間:
JQUERY_CARA_LEFT.jcarousel.stopAuto();
// or
JQUERY_CARA_RIGHT.jcarousel.stopAuto();
的差異在這些情況下是版本...較新的版本是從舊版本的不同。閱讀文檔,它就在那裏。 – Andrew
@Andrew舊版插件或jquerry的文檔?我無法爲舊版本的插件提供文檔,你有鏈接嗎? – evan
您可以在源代碼中找到文檔。只需右鍵單擊頁面並單擊源代碼。通過文本篩選,直到遇到這個:''如果您使用Firefox,則應該有一個直接鏈接,所以這只是一個簡單的點擊而已。開發人員在那裏有一些文檔。 – ShadowScripter