Я хочу создать социальную боковую панель, которая может быть скрыта при нажатии на стрелку. Она скрывается по краю слева. Я пытался переключать классы, если операторы, но он только скрывает его и не отображается после второго щелчка. Это мой код прямо сейчас: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