2010-10-19 89 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) {} 
});