我的鼠標懸停功能可以動態顯示對象的寬度,但當它到達目的地時,它會前後移動2或3個像素。有沒有解決這個問題的方法。在鼠標懸停時停止動畫
$(this).mousover(function() {
$('myselector').animate({'width': 200});
// this is all have for my animation but it moves alot
});
我的鼠標懸停功能可以動態顯示對象的寬度,但當它到達目的地時,它會前後移動2或3個像素。有沒有解決這個問題的方法。在鼠標懸停時停止動畫
$(this).mousover(function() {
$('myselector').animate({'width': 200});
// this is all have for my animation but it moves alot
});
如果要動畫寬度200像素的mouseover
,然後將其動畫回(例如:100像素)的mouseout
這可以幫助:
$(this).mouseover(function() {
$('myselector').stop().animate({'width': 200});
});
$(this).mouseout(function() {
$('myselector').stop().animate({'width': 100});
});
通常情況下,stop()本身不會執行這個技巧,您需要通過「true」參數來清除文檔動畫隊列:
.stop('true', 'true);
完整的文檔在這裏:
http://forum.jquery.com/topic/stop-true-true-animation-chains-and-callbacks
可否請你創建一個測試用例這個上[的jsfiddle(http://www.jsfiddle.net/)? – mekwall 2011-04-28 08:42:34
我創建了自己的[測試](http://jsfiddle.net/mekwall/3rZAP/),我無法重現您所描述的內容。 – mekwall 2011-04-28 08:45:30