PageSourceSearch

https://horoshie-kraski.ru/bitrix/templates/dresscode/components/bitrix/menu/leftMenu/script.js?17736646713151

js horoshie-kraski.ru collected 2026-10-07 16:45:32 UTC 3,151 bytes, 168 lines download raw bytes

1//global vars
2var __menuTimeoutID;
3
4$(window).on("ready", function(event){
5
6	//jquery vars
7	var $menu = $("#leftMenu");
8	var $menuItems = $menu.children(".eChild");
9
10	var switchHandler;
11	var delayTime = 200;
12
13	//other
14	var viewport = 0;
15
16	//functions container
17	var events = {
18		click: {}
19	}
20	var tools = {};
21
22	//get browser viewport
23	tools.getViewport = function(){
24
25		//(mozilla/netscape/opera/IE7)
26		if(typeof window.innerWidth != "undefined"){
27			viewport = window.innerWidth;
28		}
29
30		//IE6
31		else if(typeof document.documentElement != "undefined" && typeof document.documentElement.clientWidth != "undefined" && document.documentElement.clientWidth != 0){
32			viewport = document.documentElement.clientWidth;
33		}
34
35		//older versions of IE
36		else{
37			viewport = document.getElementsByTagName("body")[0].clientWidth;
38		}
39
40		return viewport;
41
42	}
43
44	//events functions
45	events.click.open = function(event){
46
47		//check viewport
48		if(tools.getViewport() <= 1024){
49
50			//jquery vars
51			var $this = $(this);
52			var $container = $this.parents("li");
53
54			//other
55			var state = $this.data("state");
56
57			//check state
58			if(typeof state == "undefined" || state === false){
59
60				//open
61				$container.addClass("opened");
62
63				//set state
64				$this.data("state", true);
65
66				//block actions
67				return event.preventDefault();
68
69			}
70
71		}
72
73	}
74
75	events.click.close = function(event){
76
77		//check viewport
78		if(tools.getViewport() <= 1024){
79
80			//jquery vars
81			var $this = $(this);
82			var $container = $this.parents(".opened");
83
84			//close parent
85			$container.removeClass("opened");
86
87			//close by tree
88			$container.find(".opened").removeClass("opened");
89
90			//set state
91			$container.find(".menuLink").data("state", false);
92
93			//block actions
94			event.preventDefault();
95			event.stopimmediatepropagation();
96
97		}
98
99	}
100
101	events.mouseover = function(){
102
103		//check viewport
104		if(viewport > 1024){
105
106			//jquery vars
107			var $this = $(this);
108
109			//display drop menu
110
111			if(switchHandler) clearTimeout(switchHandler);
112			switchHandler = setTimeout(function(){
113				$menuItems.removeClass("activeDrop").find(".drop").hide();
114				$this.addClass("activeDrop").find(".drop").css("display", "table");
115			}, delayTime);
116
117
118			//
119			return clearTimeout(__menuTimeoutID);
120
121		}
122
123		//clear
124		else{
125			$menuItems.removeClass("activeDrop");
126			$menu.find(".drop").removeAttr("style");
127		}
128
129	}
130
131	events.mouseout = function(){
132
133		//check viewport
134		if(viewport > 1024){
135
136			//jquery vars
137			var $this = $(this);
138
139			//hide drop menu
140			__menuTimeoutID = setTimeout(function(){
141				$this.removeClass("activeDrop").find(".drop").hide();
142			}, delayTime + 100);
143
144		}
145
146		//clear
147		else{
148			$menuItems.removeClass("activeDrop");
149			$menu.find(".drop").removeAttr("style");
150		}
151
152	}
153
154	//set start viewport
155	tools.getViewport();
156
157	//binds
158	$(document).on("click", "#leftMenu .nested .back", events.click.close);
159	$(document).on("click", "#leftMenu .nested > a", events.click.open);
160
161	//mouse
162	$(document).on("mouseover", "#leftMenu .eChild", events.mouseover);
163	$(document).on("mouseout", "#leftMenu .eChild", events.mouseout);
164
165	//resize control
166	$(window).on("resize", tools.getViewport);
167
168});

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.