我相信你的問題是在語法。每次使用$它使一個新的jQuery對象,所以
$("#video_seek").slider({
range: "max",
step: 1,
slide: function(event, ui) {
handleSlider();
}
});
//below are not necessarily referring to the original slider, but rather creating new sliders.
$("#video_seek").slider({ stop: function(event, ui) {handleSlider();}});
$("#video_seek").slider({ change: function(event, ui) {handleSlider();}});
@Andrew是在他的語法正確。所有你應該需要的是「改變」的事件,你可以在你原有的申報設置是這樣的:
$("#video_seek").slider({
change: function(event, ui) {
handleSlider();
}
});
,甚至是這樣的:
$("#video_seek").slider({
change: handleSlider
});
,如果你需要後附加一個事件處理程序事實上,這樣做是這樣的:
$("#video_seek").bind("slidechange", function(event, ui) {
handleSlider();
});
甚至:
$("#video_seek").bind("slidechange", handleSlider);
(編輯)
全部放在一起,並避免產生後續的jQuery對象。
var videoSeek = $('#video_seek');
videoSeek.slider({
slide: handleSlider
});
//added later on not necessary just for example of doing so
videoSeek.bind('slidechange', handleSlider);
function handleSlider(event, ui){
//do stuff
}
我敢肯定,變化應在這裏工作( http://jsfiddle.net/zAzvL/)。那不是你所看到的行爲嗎? – 2012-02-18 22:06:49
@AndrewWhitaker更好但不完美,我拿出了功能。我想我有一個函數在滑塊完成更新之前觸發。 – JustAnotherDeveloper 2012-02-18 22:20:35
每次滑動時,「滑動」都會觸發鼠標移動。這可能是問題嗎? – 2012-02-18 22:22:19