Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как сделать чтобы меню не закрывалось при изменении высоты? (https://javascript.ru/forum/misc/70432-kak-sdelat-chtoby-menyu-ne-zakryvalos-pri-izmenenii-vysoty.html)

Befref 04.09.2017 22:05

Как сделать чтобы меню не закрывалось при изменении высоты?
 
Нашёл адаптивное меню, которое не конфликтует с остальными скриптами. Но возникла проблема. При появлении экранной клавиатуры на смартфоне или просто изменении размера окна меню тут же исчезает. Нужно чтобы оно пропадало только при нажатии. Что там поправить надо? Никак не пойму.
Ссылка на демо скрипта - http://studiosr.ru/wp-content/upload...enu/index.html

рони 04.09.2017 23:53

Befref,
function adaptMenu()
else {
*!*
		    if($('.rmm-menu').is(".rmm-mobile")) return;
*/!*
			$('.rmm-menu').addClass("rmm-mobile");
			$('.rmm-toggled').show();
		    $('.rmm-toggled').addClass("rmm-closed");

Befref 06.09.2017 12:10

Подскажите ещё, как убрать мерцание при исчезновении основного меню и появлении подменю. Там используется display:block/none, а они не анимируются. Скрывать их через hidden тоже не вариант

рони 06.09.2017 13:11

Befref, как вариант
<style type="text/css">
   .rmm.style ul{
     background-color: transparent;
   }
    </style>

// click interacts in mobile wersion
	$('.rmm-dropdown').click(function (e) {
		if($(this).parents(".rmm-menu").hasClass('rmm-mobile')){
			e.preventDefault();
			e.stopPropagation();

			$(this).next().addClass("rmm-subview");

			var index=$(this).parent().index();

			var i=0;
			$(this).parent().parent().children("li").each(function() {
				if(index==$(this).index()){
					$(this).removeClass("rmm-subover-hidden");
					$(this).addClass("rmm-subover-visible")*!*.css({opacity:0}).animate({opacity:1},800);*/!*
				}else{
					$(this).removeClass("rmm-subover-visible");
					$(this).addClass("rmm-subover-hidden");
				}
			});
			$(this).addClass("rmm-subover-header");
		}
	});

Befref 06.09.2017 13:46

Анимация появилась, но кратковременный момент с пропажей всего меню остался.

Нашёл другое решение. Спасибо за помощь


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