我正在使用滑块将值作为POST发送到我的服务器,但是,它们仅在鼠标上升时更新。有没有办法在鼠标按下期间重复POST,因为正在拖动滑块?
function changeBuzz(event, ui) {
$('#indicator').text(ui.value);
$.post('/buzz', { buzz: ui.value } );
}
$(document).ready(function(){
$('#slider').slider({min: 0, max:8000, change:changeBuzz});
});
答案 0 :(得分:0)
请查看此活动#event-slide
在幻灯片播放期间每次鼠标移动时触发。提供的价值 event as ui.value表示句柄将具有的值 当前运动的结果。取消该活动将阻止该事件 从移动手柄和手柄将继续有其前一个 值。
但请注意每次鼠标移动时反复的ajax请求。确保在移动鼠标或类似内容时创建一些间隔...并保持change
事件以保证最终的正确值。
答案 1 :(得分:0)
对于捕获滑动,使用内置幻灯片事件,该事件在幻灯片中的每次鼠标移动时触发。
$('#slider').slider({
min: 0,
max:8000,
slide: changeBuzz
});
如果您还想捕获mousedown事件,可以使用插件外部的标准jquery处理程序(下面未经测试的代码)。但您必须手动创建函数所需的对象,实际上只是UI
$('#slider').mouseDown(function(e){
var event = {}
var ui = $('#slider') // this might not be correct but you can find out what you need here
changeBuzz(event,ui)
}
这应该至少让你有一些方法