Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Скрипт вывода sidebara (https://javascript.ru/forum/jquery/74445-skript-vyvoda-sidebara.html)

yaboku11108 12.07.2018 22:19

Скрипт вывода sidebara
 
Здраствуйте.
Помогите пожалуйста разобраться с такой проблемой.
В этом скрипте дописал замену класса у элемента и перестала работать часть с закрытием меню.
var main = function() { 

    $('.menu__icon_menu').click(function() { 
   -> $(".menu__icon_menu").removeClass('menu__icon_menu');
   -> $(this).addClass('menu__icon_close');
        $('.sidebar__menu').animate({ 
 
            left: '0px' 
 
        }, 200); 
         
        $('menu__body').animate({ 
 
            left: '285px'
 
        }, 200); 
    });
/*Эта часть не работает*/ 
    $('.menu__icon_close').click(function() { 
   -> $(".menu__icon_close").removeClass('menu__icon_close');
   -> $(this).addClass('menu__icon_menu');
        $('.sidebar__menu').animate({ 
 
            left: '-285px' 
 
        }, 200); 
         
    $('menu__body').animate({ 
 
            left: '0px' 
 
        }, 200); 
    });
};

$(document).ready(main);

рони 12.07.2018 22:38

Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]


О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.

yaboku11108 12.07.2018 22:46

Первый раз на форуме пишу, извините.

рони 12.07.2018 22:50

yaboku11108,
jquery не телепат, оно не знает что у вас появится класс 'menu__icon_close'
клик ставят на то что есть всегда!!! добавьте вашей кнопке третий класс и на него поставьте клик, либо ставьте клик на родителя кнопки.

yaboku11108 12.07.2018 22:54

Если закрытие делаю на тот же класс, что и открытие. Меню открывается и сразу же закрывается

рони 12.07.2018 22:55

yaboku11108,
селектор родителя кнопки какой?

yaboku11108 12.07.2018 22:58

Вот html страницы меню
<div class="container">
	<div class="menu__body">
		<div class="sidebar__menu">
			
			<!--Иконка меню-->
		        <div class="menu__icon_menu menu__open">
				<img src="../images/menu-ham-icon.png">
			</div>
				<!--Меню-->
		<ul class="menu__main">
			<li><a href="/">Главная</a></li>
			<li><a href="#">Новости</a></li>
			<li><a href="#">Портфолио</a>
				<ul class="menu__second">
					<li><a href="/">Главная</a></li>
					<li><a href="/">Главная</a></li>
					<li><a href="/">Главная</a></li>
					<li><a href="/">Главная</a></li>
				</ul>
			</li>
			<li><a href="#">Загрузки</a></li>
		</ul>
		</div>

		<!--Menu body-->
		<div class="menu__background"></div>
	</div>
</div>

рони 12.07.2018 23:00

yaboku11108,
строку 3 и 19 перепишите в таком формате
$('папа_кнопы').on('click', '.menu__icon_menu',function() {

$('папа_кнопы').on('click', '.menu__icon_close',function() {

рони 12.07.2018 23:02

yaboku11108,
$('.sidebar__menu').on('click', '.menu__icon_menu',function() {

рони 12.07.2018 23:03

Цитата:

Сообщение от yaboku11108
$('menu__body').animate

точка у класса где?


Часовой пояс GMT +3, время: 01:34.