2016-09-06 108 views
0

我想在多個jquery選項卡中包含一個滑塊,但因爲滑塊需要寬度和高度才能正常顯示,所以我需要在選項卡更改時調用窗口大小調整觸發器。此代碼的工作,但只有一次:jQuery窗口調整大小觸發器只觸發一次

jQuery(".vc_tta .vc_tta-tab, .vc_tta .vc_tta-panel-title").click(function() { 
    jQuery(window).trigger("resize"); 
}); 

我放在這個在我的文檔外(準備)功能,但它仍然只能使用一次。

這是我完整的腳本:

jQuery(document).ready(function($){ 
    $('.slider-<?= $name ?>').slick({ 
     slidesToShow: 1, 
     centerMode: true, 
     centerPadding: '200px', 
     arrows: true, 
     focusOnSelect: true, 
     responsive: [ 
      { 
       breakpoint: 800, 
       settings: { 
        centerMode: false 
       } 
      } 
     ] 
    }); 
}); 

jQuery(".vc_tta .vc_tta-tab, .vc_tta .vc_tta-panel-title").click(function() { 
    jQuery(window).trigger("resize"); 
}); 

我不能複製完全按照我使用WordPress的可視化編輯器,但這是同一個問題:https://jsfiddle.net/keithpetrillo/d9jrgs80/

+0

控制檯錯誤? –

+0

不,沒有任何東西顯示在他控制檯 –

+0

只能工作一次,或者僅適用於可見元素,因爲其餘部分隱藏了選項卡? – isherwood

回答

1

無需移動功能外部document.ready。嘗試從文檔中委託事件:

jQuery(document).on('click', ".vc_tta .vc_tta-tab, .vc_tta .vc_tta-panel-title", function() { 
    jQuery(window).trigger("resize"); 
}); 

這適用於在頁面加載時不存在或隱藏的元素。

+0

這個工作,但仍然只有一次:(:(第一個標籤,我點擊,無所謂哪個) –

+0

很難從你給我們的東西說,你可以複製演示? – isherwood

+0

是的,我已經更新了上面的問題 –

相關問題