0

下のページを作成しました

http://isca01.bigwavemedia.info/~staged2b/about/staff

ご覧のとおり、スタッフ間のフィルターは機能しますが、新しいスタッフグループに切り替えるとすぐに、ロールオーバーポップアウトは機能しません。

これらは過去にさかのぼる2つのスクリプトですが、ロールオーバーするとクラスホバーのある画像が飛び出すcssがいくつかあります。

私はこれを何日も修正しようとしていましたが、どんな助けでも大歓迎です。

よろしくブレントフレンチ

4

1 に答える 1

1
$(function() {
    $(".imgHover").hover(
        function() {
            $(this).children("img").fadeTo(200, 0.85).end().children(".hover").show();
        },
        function() {
            $(this).children("img").fadeTo(200, 1).end().children(".hover").hide();
        });
})(jQuery);

ここに問題があります。上記を次のように変更します。

$(function() {
    $(".imgHover")
        .live('mouseenter', function() {
            $(this).children("img").fadeTo(200, 0.85).end().children(".hover").show();
        })
        .live('mouseleave', function() {
            $(this).children("img").fadeTo(200, 1).end().children(".hover").hide();
        });
})(jQuery);

スタッフグループを変更すると、機能のバインドが解除されます。を使用.live()すると、イベントがバインドされたままになります。理想的には使用します.delegate()が、それはjQueryの新しいバージョンでのみ使用可能です

詳しくは:

  1. 練る
  2. 住む
  3. 委任

編集

.delegate()1.4.2に実際に存在することに気づきました。後で入ってくると思いました。イベントリスナーを親要素(他のスクリプトによって変更されない要素)にアタッチできるため、から.live()に変更することをお勧めします。.delegate()構文の変更については、ドキュメント(上記)へのリンクを確認してください

于 2012-08-08T08:03:42.503 に答える