1

私はこのカスタム ニュース ティッカーを実行しています (これに新しいプラグインをプラグインする余裕はありません :-( )。そのほとんどは完了しています。これは、mouseHover でティッカーを停止し、mouseOut でアニメーションを再開するために必要な唯一のことです。

http://jsfiddle.net/Sullan/EMcMz/4/

これは私が使用している関数です

function tick(){
$('#bigWinners li:first').animate({'left':-150}, 200, function () { $(this).appendTo($('#bigWinners')).css('left', 0); });
}
setInterval(function(){ tick () }, 4000);

誰でもこれで私を助けてくれませんか。前もって感謝します

4

2 に答える 2

1

マウス入力時に clearInterval() を使用し、マウスアウト時にタイマーを再起動できます

var timer = setInterval(tick, 1000);

$('#bigWinners').on({ //<-- change depending on which elements you want these to trigger on
  mouseenter: function(){
    clearInterval(timer);
  },
  mouseleave: function(){
    timer = setInterval(tick, 1000);
  }
});

フィドル

于 2013-01-07T16:02:00.757 に答える
0

必要なのはこれだけです:

http://jsbin.com/ifokak/4/edit

var intv;    
function tick(){     
  intv = setInterval(function(){
    $('#bigWinners li:first').animate({left:-150}, 200, function() {
        $(this).appendTo('#bigWinners').css('left', 0);
    });
  },2000);     
}   
tick(); // initial kick

$('.mini-carousel').on('mouseenter mouseleave', function( e ){
  var mEnt = e.type=='mouseenter' ? clearInterval(intv) : tick() ;
});

ところで、.appendTo('#bigWinners')代わりに使用.appendTo( $('#bigWinners') )

于 2013-01-07T16:01:27.400 に答える