0

focus()画像をズームインおよびズームアウトするアプリケーションがありますblur()。元の画像サイズを読み、それに15pxを追加して、ズームイン効果を作成しました。これは正常に機能します。問題は、私が読んだ元の画像サイズを渡そうとしている.blur()が運が悪いズームアウト効果にあります。誰かが私がこの問題を解決するのを手伝ってもらえますか?

4

2 に答える 2

1

これは、次のコードの動作デモです。

まず、関数でメソッドを呼び出していませんでし$.data()orgW。また、ズームアウトを機能させるために、関数を変更して、関数と同様の実装を行いました。orgH.blur().blur().focus()

$('button:has(img)').blur(function() {

    if (timer !== null) clearTimeout(timer);

    var $image = $(this).find('img');

    $image.each(function() {
        $(this).animate({
            'width': $.data(this, 'orgW') + 'px',
            'height': $.data(this, 'orgH') + 'px',
        }, 500);
    });

});
于 2011-01-25T10:38:33.987 に答える
1

アニメーション機能で'+=15'とを使用することもできます。'-=15'幅と高さを保存する必要はありません。

$('button:has(img)').focus(function() {
    $(this).find('img').animate({
        width: '+=15',
        height: '+=15'
    }, 500);
});

$('button:has(img)').blur(function() {
    $(this).find('img').animate({
        'width': '-=15',
        'height': '-=15'
    }, 0);
});

デモ

編集:これで動作するはずです。

于 2011-01-25T10:43:12.670 に答える