2014-11-24 88 views
0

我需要在滑塊操作開始之前獲取滑塊的值。如何在滑塊操作事件之前獲取滑塊的值?

如果用戶使用Jquerymobile滑塊輸入框單擊,則使用焦點對焦事件將起作用。但如果用戶操縱滑塊,則不起作用。

slidestart事件不起作用。在slidestart事件之前它總是有一點偏離滑塊值?

有沒有辦法調用滑塊輸入的最後一個值?或者在操作前捕獲滑塊值?

這是我到目前爲止已經試過......

(在這個例子中,我要聽在課堂entry_percent任何改變滑塊。)

var entry_percent_class = $('.entry_percent'); 
var previous_value; 
var change; 


$(".entry_percent").on('slidestart', function(event) { 
    previous_value = $(this).val(); 
    alert(previous_value); 

}); 

entry_percent_class.on('tap', function() { // if the user inputs a number in the slider box, capture the number before it's changed. 
    previous_value = $(this).val(); 
    alert(previous_value); 

}); 



entry_percent_class.on('focus', function() { // if the user inputs a number in the slider box, capture the number before it's changed. 
    previous_value = $(this).val(); 
    //alert(previous_value); 

}); 

entry_percent_class.on('change', function() { // if the user inputs a number in the slider box, capture the number before it's changed. 
     previous_value = $(this).val(); 
     //alert(previous_value); 

    }); 

回答

1

使用stop事件保存價值並在需要時拯救它。比使用變量要好,使用data

$(".entry_percent").on('slidestart', function(event) { 
    previous_value = $(this).data("oldvalue"); 
    alert(previous_value); 
}); 

$(".entry_percent").on('slidestop', function(event) { 
    $(this).data("oldvalue",$(this).val()); 
}); 

FIDDLE

+0

感謝啓發我有關數據標籤。它完美的作品。 – Sage 2014-11-24 11:32:20