私はjQueryの「関数」で立ち往生しています(私は基本的なことしか知りません)。レスポンシブウェブサイトで作業していて、ユーザーが矢印アイコン→[>](a#side-toggle)を押すと、メニュー(#header-toggle)がスライドして外に出て、アイコンが左側にスライドして表示されたままになります、およびテキストが変更され、矢印→[<]が変更されます。
このアイコンをもう一度クリックすると、メニューは元の場所に戻り、アイコンは→[>]になります。完全。
最初の機能では、ユーザーがメニューの使用中にコンテンツを押さないように、オーバーレイDIVが表示されます。このオーバーレイをクリックすると、メニューがスライドして戻り、オーバーレイが消えます。普通。しかし、テキストは変更されません、それはそのように立ち往生しています→[<]
テキストをもう一度クリックしてメニューを表示すると、この→[>]に変わり、メニューが表示されません(関数は実際には元の状態に戻りました)。もう一度クリックすると、関数が適切に切り替わります。
これを修正する必要があります。ユーザーはこのアイコンを1回押すだけで、メニューが表示されます。
可能であればコードをクリーンアップしてください。これも混乱していると思います。
これがjsfiddleです!
問題はJSにあります、ここに抜粋があります:
$('#side-overlay').click(function() {
$(this).hide();
$("#header-toggle").animate({
left: "-200px",
boxShadow: "0px 0px 0px 0px rgba(0,0,0,0)"
}, { duration: 700, easing: "easeInOutBack", queue: false });
$("#side-handler").animate({
left: "0px",
}, { duration: 700, easing: "easeInOutBack", queue: false });
$("a#side-toggle").text($(this).text() == '>' ? '<' : '>');
});
ご協力いただきありがとうございます!