Показать сообщение отдельно
  #3 (permalink)  
Старый 15.06.2018, 10:08
Новичок на форуме
Отправить личное сообщение для root-andrey Посмотреть профиль Найти все сообщения от root-andrey
 
Регистрация: 25.02.2010
Сообщений: 9

да.(выпадающее меню у меня с задержкой) - в качестве примера, заметил что и этого достаточно,
когда использую this или eventObject аргумент функции eventObject.currentTarget

Если на один элемент то нормально обрабатывается.(например div)

а это мой код для обработки выпадающего меню с задержкой
var menuTop = (function(){
		var currentMenuItem;	
		var timerMenuOpen;
		var status = false;
		
		function toogleShowMenu_(){
					
			if(currentMenuItem){
				elemSubMenu = currentMenuItem.find(".wrapperSubMenu");	
				
				if(status){
					statusSubMenu = "none";
					currentMenuItem.removeClass("active");
					currentMenuItem = null;
					status = false;
				}else{
					currentMenuItem.addClass("active");	
					statusSubMenu = "block";
					status = true;				
				}

				if(elemSubMenu.length){		
					elemSubMenu.css("display", statusSubMenu);
				}
			}
		}			
		
		function setTimerMenuShow_(eventObject){
			currentMenuItem = jQuery(eventObject.currentTarget);		
			timerStatus = true;
			timerMenuOpen = setTimeout(function() {
				menuTop.toogleShowMenu();				
			}, 200);
		}
		function clearTimerMenuShow_(){
			if(!status){
				clearTimeout(timerMenuOpen);
				currentMenuItem = null;	
			}			
		}
		
		return {
			setTimerMenuShow: setTimerMenuShow_,
			clearTimerMenuShow: clearTimerMenuShow_,
			toogleShowMenu: toogleShowMenu_
		};
	}());

	$("#header_menu li.menuItem").hover(
		function(eventObject){
			menuTop.setTimerMenuShow(eventObject);
		},
		function(){	
			menuTop.clearTimerMenuShow();		
			menuTop.toogleShowMenu();
		}
	);
	jQuery("#header_menu .closeMenu").on("click", function(event){menuTop.toogleShowMenu();});

<div id="header_menu">
	<ul>
	<li class="menuItem"><a href="#">Меню 1</a>
		<div class="wrapperSubMenu">
			<div class="outerWrapper">
			<ul>	
				<li class="menuItem"><a href="#">Меню 2</a></li>
				<li class="menuItem"><a href="#">Меню 3</a></li>
				<li class="menuItem"><a href="#">Меню 4</a></li>
			</ul>
		</div>
	</li>
	<li class="menuItem"><a href="#">Меню 2</a></li>
	<li class="menuItem"><a href="#">Меню 3</a></li>

	</ul>
</div>

</script>

Последний раз редактировалось root-andrey, 15.06.2018 в 10:30.
Ответить с цитированием