PageSourceSearch

https://www.hiustalo.fi/media/js/vilperi.js

js hiustalo.fi collected 2026-09-26 14:48:26 UTC 6,018 bytes, 223 lines download raw bytes

1/*
2	vilperi.js
3	
4	Versio 2
5	
6	(c) Werkkoyhtiö Vilperi Oy
7*/
8
9// Laatikoiden resize
10function resizeLaatikot(luokka) {
11	var korkein = 0,
12		divit = [],
13		$el,
14		$rivi;
15
16	$(".lista-rivi").each(function() {		
17		$rivi = $(this),
18		korkein = 0,
19		divit = [];		
20	
21		$rivi.find(luokka).each(function() {
22			$el = $(this);
23			
24			if($el.closest('.gridi').css('float') != "none") {
25				korkein = Math.max(korkein, $el.height());
26				divit.push($el);
27			}
28		});
29		
30		for(i = 0; i < divit.length; i++) {
31			//divit[i].animate({height:korkein},350);
32			divit[i].height(korkein);
33		}
34	});
35}
36
37// Resettaa laatikoiden koot
38function resetLaatikot(luokka) {
39	$(".lista-rivi "+luokka).each(function() {
40		$(this).css('height', '');
41	});
42}
43
44function handleLaatikot(delay) {
45	resetLaatikot(".laatikko .linkki a.nappi");
46	resetLaatikot(".laatikko .otsikko");
47	resetLaatikot(".laatikko .laatikko-content");
48	resetLaatikot(".laatikko");
49
50	if(delay == 1) {
51		setTimeout(function () {
52			resizeLaatikot(".laatikko .linkki a.nappi");
53			resizeLaatikot(".laatikko .otsikko");
54			resizeLaatikot(".laatikko .laatikko-content");
55			resizeLaatikot(".laatikko");
56		}, 500);
57	}
58	else {
59		resizeLaatikot(".laatikko .linkki a.nappi");
60		resizeLaatikot(".laatikko .otsikko");
61		resizeLaatikot(".laatikko .laatikko-content");
62		resizeLaatikot(".laatikko");
63	}
64}
65
66// Huomionuolet nappeihin
67function handleNapit() {
68	$(".nappi").each(function() {
69		if($(this).hasClass("huomio-pois") == 0) {
70			$(this).append('<span class="huomio-nuoli"><span class="huomio-reunus"></span></span>');
71		}
72	});
73}
74
75
76// Sivutus
77function loadRefresh(url, id) {
78	$('#'+id+' #load-pagination').load(url+" #"+id+" #load-pagination .pagination", function() {
79		
80		var $uusiSivu = $('#'+id+' #preloadNext');
81		
82		$uusiSivu.load(url+" #"+id+" #load-first .load-wrapper", function () {	
83			var $paivitaTama = $('#'+id+' > #load-first .load-wrapper');
84			
85			$paivitaTama.html($uusiSivu.html());
86			$('#'+id+' .loading').fadeOut('fast');
87
88			$(".sivutus .pagination span a").on("click", function(event) {
89				event.preventDefault();
90				var passURL = $(this).attr("href");
91				var $passID = $(this).closest(".sivutus");
92				$passID.find(".loading").fadeIn('fast');
93		
94				loadRefresh(passURL, $passID.attr("id"));
95			});
96		});
97	});
98}
99
100
101$(document).ready(function () {
102	var resizeTimeout;
103	
104	handleNapit();
105	handleLaatikot(1);
106	
107	$(window).resize(function () {
108		window.clearTimeout(resizeTimeout);
109		resizeTimeout = window.setTimeout(function() {
110			handleLaatikot(0);
111		}, 500);
112	});
113	
114	$("a.call").prepend('<i class="icon-phone"></i>');
115	$("a.email").prepend('<i class="icon-envelope"></i>');
116
117	// Sivutus
118	$(".sivutus .pagination span a").on("click", function(event) {
119		event.preventDefault();
120		var passURL = $(this).attr("href");
121		var $passID = $(this).closest(".sivutus");
122		
123		$passID.find(".loading").fadeIn('fast');
124	
125		loadRefresh(passURL, $passID.attr("id"));
126	});
127
128	// Dropdown ikoni
129	$(".dropdown-icon").on("click", function(event) {
130		event.preventDefault();
131		$(this).parent().toggleClass("openSub");
132	});
133	
134	// Responsiivinen valikko-nappi
135	var valikkoTimeout;
136	$(".valikko-avaa").on("click", function(event) {
137		event.preventDefault();
138		window.clearTimeout(valikkoTimeout);
139		valikkoTimeout = window.setTimeout(function() {
140			$(".valikko-lista").fadeToggle("fast");
141			$(".valikko-avaa").toggleClass("avattu");
142		}, 100);
143		
144	});
145	
146	// Laatikon avaus
147	$(".laatikot .laatikko .otsikko").on("click", function(event) {
148		if($(this).parent().hasClass("alwaysOpen") == 0) {
149			$(this).parent().toggleClass("imOpen");
150		}
151	});
152	
153	// Click to call -varmistus
154	$(".call").each(function() {
155		var call = $(this).attr("href");
156		call = call.replace("%20", "");
157		$(this).attr("href",call);
158	});
159	
160	var $nav = $('#top');
161	$('#fixedNav').append($nav.html());
162	
163	$(window).bind("scroll", function(){
164		var navheight = $("#top").height() - 40; 
165		
166			if($(window).scrollTop() > navheight) {
167				
168				$("#fixedNav").addClass("fixed");
169				$("#fixedNav").show();
170				$(".avaaNavi").addClass("show");
171				
172			}
173			else {
174				
175				$("#fixedNav").removeClass("fixed");
176				$("#fixedNav").hide();
177				$(".avaaNavi").removeClass("show");
178			}
179		
180	});
181	var valikkoTimeout;
182	$(".avaaNavi").on("click", function(event) {
183		event.preventDefault();
184		window.clearTimeout(valikkoTimeout);
185		valikkoTimeout = window.setTimeout(function() {
186			$(".valikko-lista").fadeToggle("fast");
187			$(".valikko-avaa").toggleClass("avattu");
188			
189		}, 100);
190		$("html, body").animate({ scrollTop: 105 }, 500);
191		
192	});
193	$(".valikko-lista li").each(function() {
194		if($(window).innerWidth() <= 600) {
195			$(".submenu").hide();
196			$(".avaaSubnav", this).on("click", function() {
197				$(".submenu").hide();
198				$(".avaaSubnav").text("+");
199				$(this).next(".submenu").show(), 800;
200				$(this).text("-");
201			});
202		};	
203	});
204	$(".laatikko.pallo").each(function() {
205			var width = $(this).width();
206			$(this).delay(1000).queue(function() {
207				$(this).css("height", width+"px");
208			});
209		});
210	
211
212	
213	$(".laatikko.hovertext.sym").each(function() {
214		var width = $(this).width();
215		$(this).delay(1000).queue(function() {
216				$(this).css("height", width+"px");
217			});
218	});
219	
220
221	
222});
223/*! A fix for the iOS orientationchange zoom bug. Script by @scottjehl, rebound by @wilto.MIT / GPLv2 License.*/(function(a){function m(){d.setAttribute("content",g),h=!0}function n(){d.setAttribute("content",f),h=!1}function o(b){l=b.accelerationIncludingGravity,i=Math.abs(l.x),j=Math.abs(l.
223y),k=Math.abs(l.z),(!a.orientation||a.orientation===180)&&(i>7||(k>6&&j<8||k<8&&j>6)&&i>5)?h&&n():h||m()}var b=navigator.userAgent;if(!(/iPhone|iPad|iPod/.test(navigator.platform)&&/OS [1-5]_[0-9_]* like Mac OS X/i.test(b)&&b.indexOf("AppleWebKit")>-1))return;var c=a.document;if(!c.querySelector)return;var d=c.querySelector("meta[name=viewport]"),e=d&&d.getAttribute("content"),f=e+",maximum-scale=1.0",g=e+",maximum-scale=2.0",h=!0,i,j,k,l;if(!d)return;a.addEventListener("orientationchange",m,!1),a.addEventListener("devicemotion",o,!1)})(this); 

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.