2014-02-08 17 views
0

我有一個帶自動播放選項的滑塊。它使用觸發器來顯示下一個元素。但是,如果我在我的頁面上打開了一個選擇,它會關閉,因爲此觸發器點擊!如何解決這個問題呢?jquery觸發器('click')關閉打開選擇

  slideshow = setInterval(function(){ 
     $pxs_next.trigger('click'); 
    },o.auto); 

在這裏你可以看到觸發器。

+0

請提供一個複製您的問題的jsfiddle。你嘗試使用'$ pxs_next.triggerHandler('click');'而不是? –

+0

$ pxs_next.triggerHandler('click');這就是訣竅:)非常感謝!請添加它作爲答案,我會接受它! – user1632298

+0

如果您使用引用的函數作爲點擊處理程序,則最好直接調用函數。如果沒有,你應該改變你的代碼來做到這一點。請參閱@ RobSedgwick的答案 –

回答

1

H我,你正在失去select輸入的'焦點'。

而不是使用「觸發器」來調用該函數,直接調用該函數。

想像你有:

function dosomething() { 
    console.log("I did something"); 
} 

$pxs_next.on("click", function() { 
    dosomething(); 
}); 

相反的 -

slideshow = setInterval(function(){ 
    $pxs_next.trigger('click'); 
    },o.auto); 

直接轉到功能 -

 slideshow = setInterval(function(){ 
      dosomething(); 
     },o.auto); 

0

在檢查設置的時間間隔內是否打開該元素後,您可以調用click事件。 您可以通過在該元素打開和關閉時添加和刪除該元素中的類來完成此操作。