2013-03-08 53 views
0

我有一個ul,我有3 li作爲容器和動畫。兩個邊緣li將有一些來自控件(選擇和按鈕)。我的問題是,使用控件觸發我不想要的動畫。這裏是一個例子fiddle。我怎樣才能防止選擇發射動畫?謝謝窗體控件觸發器使用JQuery動畫

+0

我在與下拉列表(Chrome)交互時沒有看到動畫。 – JJJ 2013-03-08 21:17:27

+1

你的小提琴代碼應該直接包含在你的問題中,以防jsfiddle宕機。使用event.target屬性可確保觸發事件的元素與您將事件綁定到的元素相同。 – 2013-03-08 21:18:15

回答

1

如果事件目標是有問題的選擇,則阻止該行爲。

$('li#side-controls-container').on('click', function(){ 
    if ($(event.target).is('select')) { return; } 
    ... 
}); 

DEMO

建議:

如果您計劃擁有多個控件,您可以考慮給他們的所有特定的類。然後,您可以檢查事件目標是否具有該類,而不是檢查它是否是特定類型的元素。

$('li#side-controls-container').on('click', function(){ 
    if ($(event.target).is('.container-control')) { return; } 
    ... 
});