0

このページhttp://www.londonsitedesign.co.uk/home.htmlで、リストの上にカーソルを合わせると、ポップアップ画像が表示されます。特に、リンクの 1 つをクリックしてからそのページに戻ったときに、画像が表示されたままになると、画像が動かなくなることがあります。そして、そのポップアップ画像の同じリンクにカーソルを合わせると、逆になり、マウスオーバーすると表示されるのではなく消えますか?

$("#main").on("mouseover mouseout", "h4", function () {
$("#" + $(this).data("img")).toggle();
});

これを防ぐ方法はありますか?

4

1 に答える 1

0

を使用する代わりにtoggle()、次のように、mouseover と mouseout に個別のハンドラーをセットアップします。

$("#main").on('mouseover', 'h4', function () {
    $("#" + $(this).data("img")).show();
}).on('mouseout', 'h4', function () {
    $("#" + $(this).data("img")).hide();
});

Backブラウザーは、履歴内のページに戻るためにヒットしたときのページの状態を予測できない場合があります。それを修正する方法があるかどうかはわかりませんが、少なくともこの方法では、逆のトグルで立ち往生することはありません.


更新しました

戻るボタンが押されたときに画像が表示されたままになるのを防ぐ方法については、次の質問をご覧ください。

unload最後のページの状態がキャッシュされないようにするには、ページにイベント ハンドラーを追加するだけでよいようです。ハンドラーは何もする必要はありません - 定義するだけで十分です。このようなもの:

$(window).bind("unload", function() {});
于 2013-06-27T07:31:08.280 に答える