2010-10-19 28 views

回答

0

有似乎被什麼東西錯在這裏,變化事件基於滑塊位置移動,因此,如果你能看到被拖動,同時鼠標的腳向下,則此事件應該還是火,不論你的鼠標末端的地方向上。

這是你正在使用的標準jQuery滑塊嗎?如果是這樣,請嘗試官方演示頁面上的相同測試:

jQuery UI demo page

你會看到,無論在哪裏你的鼠標是變化的事件仍是起火,只要你繼續開始後,按住鼠標按鈕點擊引腳。

2

我認爲你已經使用這樣的.... 自然變化的事件是,當你的鼠標比起來,它會顯示在滑塊事件變化......

$(".selector").slider({ 
    **change**: function(event, ui) { ... } 
}); 

現在你可以使用這個類型滑動事件......所以每次移動滑塊都會顯示效果並調用此功能。

$(".selector").slider({ 
    **slide**: function(event, ui) { ... } 
}); 

Dhaval米斯特里...(UI developer

0

我也面臨着同樣的問題。對我來說,當滑塊是子div的一部分並且屏幕的其餘部分由父div覆蓋時發生。請考慮以下情形:

  1. 按下鼠標按鈕時,鼠標指針滾動條上,

  2. 拖了一段時間,把鼠標指針了孩子的div。

  3. 現在鼠標指針在父DIV。

  4. 釋放鼠標按鈕。

  5. 觀察滑桿仍然突出。

  6. 把鼠標指針回孩子的div不按按鈕。

  7. 觀察滑塊中的移動。

0

這個問題與http://bugs.jqueryui.com/ticket/8912

我嘗試下面的技巧和它的工作:

使用jQuery的懸停功能連接鼠標進行處理包含滑塊的元素。如果在滑動過程中出現鼠標移動,則觸發滑塊手柄元素的鼠標移動。

3
$("#slider").slider({ 
    start: function(event, ui) { 
     // do something on mousedown on slider 
    }, 
    stop: function(event, ui) { 
     // do something on mouseup anywhere 
    } 
}); 
0

您可以使用更改。它將起到回調的作用。 基於http://api.jqueryui.com/slider/ 您可以:

$('.selector').slider(function() { 
    change: function(event, ui) {} 
});