0

こんにちは、jquery で幅を広げた div があります。その幅が100%になったら何かしたい

$(function() {

  $('.play').click(function() {

    $('.loader').animate({
        width: "100%"
    },1500);
    $('.video img').attr('src','css/images/movie-click.jpg')
    $(this).hide();

    if($('.loader').width()==$('.video img').width()) {

        $('.video img').attr('src','css/images/movie.jpg')
    }

});

if 文に誤りがあります。誰かが私を助けることができれば。私の考えは、 with が 100% かどうかを確認し、そうであれば、すべてが正常に戻ることです。

4

3 に答える 3

4

completeアニメーションが終了したら、コールバックを使用してanimateコードを実行します。

$('.play').click(function () {
    $('.loader').animate({
        width: "100%"
    }, 1500, function() {
        // any code here will run only after the animation is complete
        $('.video img').attr('src', 'css/images/movie.jpg');   
    });
    // any code here will run as soon as the animation starts,
    // before it's completed
});
于 2013-04-02T19:11:42.060 に答える
1

クリック関数のコードは 1 回しか呼び出されないため、if ステートメントはアニメーションとして継続的に実行されません。.animate()代わりに、完了後にそのロジックをコールバックに追加するだけです。

$('.loader').animate({
    width: "100%"
},1500,swing, function() {
     $('.video img').attr('src','css/images/movie.jpg');
});
于 2013-04-02T19:11:59.493 に答える