私は矢印をクリックすると非表示にできるソーシャルなサイドバーを作りたいと思っています。余白左に隠れています。私はクラスのif文をトグルしようとしましたが、それは隠すだけで、2回目のクリック後には表示されません。これが今の私のコードです:JavaScriptは要素を隠すだけです
のjavascript-のjQuery:
$(".socialArrow").click(function() {
$(".arrowLeft").toggleClass("fa-angle-left fa-angle-right");
});
var wrapper = document.getElementById("socialWrapper");
$(".fa-angle-left").click(function() {
wrapper.style.marginLeft = ("-80px");
});
$(".fa-angle-right").click(function() {
wrapper.style.marginLeft = ("0px");
});
HTML:
<div class="socialContainer">
<ul id="socialWrapper">
...some links...
</ul>
<span class="socialArrow">
<i class="arrowLeft fa fa-angle-left"></i>
</span>
</div>
それを修正するためにどのように任意のアイデア?
私の英語は申し訳ありませんが、私は英国/米国ではありません。
このデモを使用するhttp://www.w3schools.com/jquery/tryit.asp?filename=tryjquery_eff_toggle –
まだ存在しない要素(.fa-angle-right)にイベントリスナー(クリック)を追加します。 1つのクリックハンドラだけでコードを改善できます。 clickメソッド内では、.fa-angle-rightが存在するかどうかをチェックし、それに基づいてクラスを追加または削除します。 – meavo