2009-12-22 123 views
0

我使用Chris Coyier的anythingSliderjQuery anythingSlider - 使第一張幻燈片最後兩次長

基本上它使得列表項在指定的時間之後從左側滑入。

我想調整代碼,以便第一個<li>可見兩倍於其他人。

E.g.如果幻燈片可見7秒,則第一張幻燈片需要14秒可見。

任何想法?

+0

只是順便說一句。 anythingSlider在Opera 10.10中似乎不起作用(至少對我而言)。你應該驗證它是否可用於瀏覽器 – jitter 2009-12-22 14:35:05

回答

3

應該很容易

var timeVisible = 7000; 
$('.anythingSlider').anythingSlider({ 
    autoPlay: true, 
    startStopped: true, 
    delay: timeVisible , 
    ... 
}); 

setTimeout(function() { 
    $("div.anythingSlider a#start-stop").trigger("click"); 
}, timeVisible); 
+0

這將在滑塊所在頁面的頭部,而不是編輯它自己的任何東西滑塊代碼?真的嗎? – 2009-12-22 10:45:28

+0

是的,確切地說。沒有擺弄任何需要的滑塊源代碼。您只需啓動停止滑塊,然後通過'setTimeout'函數以編程方式在一段時間後啓動它。這樣,你甚至可以顯示第一張幻燈片,只要你想要 – jitter 2009-12-22 10:49:39

+0

天才! :-)感謝你! – 2009-12-22 10:50:24

0

您可以在startStop功能改變這個(通知var extraTime):

 // Handles stopping and playing the slideshow 
    // Pass startStop(false) to stop and startStop(true) to play 
    base.startStop = function(playing){ 
     if(playing !== true) playing = false; // Default if not supplied is false 

     // Update variable 
     base.playing = playing; 

     // Toggle playing and text 
     if(base.options.autoPlay) base.$startStop.toggleClass("playing", playing).html(playing ? base.options.stopText : base.options.startText); 

     var extraTime = 0; 
     if(base.currentPage == 1){ 
      extraTime = base.options.delay; 
     } 

     if(playing){ 
      base.clearTimer(); // Just in case this was triggered twice in a row 
      base.timer = window.setInterval(function(){ 
       base.goForward(true); 
      }, base.options.delay + extraTime); 
     } else { 
      base.clearTimer(); 
     }; 
    }; 

這在jquery.anythingslider.js 223線。

0

anythingSlider似乎並不在Opera 10.10的工作(至少對我來說)。

.anythingSlider .wrapper ul {width:99999px; ---> .anythingSlider .wrapper ul {width:9999px;

相關問題