2013-01-25 29 views
2

我在不同的jQuery選項卡中有許多jQuery SlidesJS。很棒。我現在的問題是,當我點擊tab2slide2,我要回tab1slide1,我想重新啓動slide1在1!我對這個代碼是:jQuery SlidesJS

<script> 
    function start(_start) { 
     if(_start != "") { 
      starter = _start; 
     } else { 
      starter = 1; 
     } 
     $('#slides1, #slides2, #slides3').slides({ 
      start: starter, 
      preload: true, 
      slideSpeed: 1000, 
      play: 4000, 
      pause: 2000, 
      slideEasing: 'easeInOutQuint', 
      generateNextPrev: false, 
      pagination: false, 
      next: 'next', 
      prev: 'prev' 
     }); 
     $("#tabs").tabs();    
    } 

    $(document).ready(function() { 
     start(1); 

     $("#ui-id-1").click(function(){ 
      start(1); 
     });   
    }); 
</script> 

#ui-id-1tab1。點擊它應該開始slide1在1.但我得到的是一個空白的白色div。任何想法如何從1開始,當我點擊標籤?

回答

1

即與slidesjs問題計算無形價值爲height: 0width: 0

解決的辦法很簡單:你不應該在document ready事件初始化slidesjs,但是當用戶實際點擊選項卡後顯示選項卡的內容。

這就是我的init可見一個第一:

$('.bc-slider .frames:visible')).slidesjs({ 
    width:  1024, 
    height:  260, 
    play:  { 
     auto: false, 
     effect: "slide" 
    }, 
    navigation: { 
     effect: "slide", 
     active: false 
    }, 
    pagination: { 
     active: false, 
     effect: "slide" 
    }, 
    effect:  { 
     fade: { 
     speed: 500 
     } 
    } 
    }); 

這是顯示上顯示隱藏的滑塊代碼:

content.eq(index).find('.frames').slidesjs({ 
    width:  1024, 
    height:  260, 
    play:  { 
    auto: false, 
    effect: "slide" 
    }, 
    navigation: { 
    effect: "slide", 
    active: false 
    }, 
    pagination: { 
    active: false, 
    effect: "slide" 
    }, 
    effect:  { 
    fade: { 
     speed: 500 
    } 
    } 
}); 

content是一個事件,局部變量,它包含的參考到現在顯示的標籤。