1

マウスの位置に基づいて左右にアニメーション化する div がありますが、ぎくしゃくしすぎます (特に IE では)。

mousemove 関数内にあることと関係があると確信しているため.stop()、数秒で何百回も呼び出されますが、それは私が得ることができる最高のものです。きれいな連続アニメーションにしたい...

jQuery

$('#videoThumbContainer').mousemove(function(e){

    var offset = $(this).offset(),
    containerWidth = $(this).width(),
    runnerWidth = $('#videoThumbRunner').width(),
    relativeX = e.pageX - offset.left,
    difference = parseInt(containerWidth - runnerWidth),
    position = (relativeX / containerWidth) * difference;

    if (runnerWidth > containerWidth) {

        $('#videoThumbRunner').stop().animate({left: position}, 50, 'linear');
    }
});

デモ

http://jsfiddle.net/cbXh5/

4

0 に答える 0