1$(function() { 2 3 setTimeout(function() { 4 $("body").removeClass("preload"); 5 }, 1000); 6 7 8 // оÑÐ»Ð¾Ð¶ÐµÐ½Ð½Ð°Ñ Ð·Ð°Ð³ÑÑзка зеленного Ñона 9 setTimeout(function() { 10 var i = new Image(); 11 i.src = '/css/img/bg.png'; 12 i.onload = function() { 13 $('.header .bg').css({ 14 'background': 'url(/css/img/bg.png) center', 15 'background-size': '100% 100%'}) 16 .animate({'opacity': '1'}); 17 $('.header-help').css({ 18 'background': 'url(/css/img/bg.png) center', 19 'background-size': '100% 100%'}) 20 .animate({'opacity': '1'}); 21 22 $('.download').css('background', 'url(/css/img/bg.png) center no-repeat'); 23 $('.download-2').css('background', 'url(/css/img/bg.png) center no-repeat').css('background-size', '100%'); 24 }; 25 }, 50); 26 27 28 // accordion for site map 29 $('.site-map h3').click(function() { 30 var ul = $(this).parents('.col').find('ul'); 31 if (ul.hasClass('expanded')) 32 return false; 33 $(this).parents('.site-map').find('ul.expanded').slideUp(function() { 34 $(this).attr('style', ''); 35 }).removeClass('expanded'); 36 ul.slideDown().addClass('expanded'); 37 return false; 38 }); 39 40 41 // toolbar with menu 42 var menu1Button = $('a.menu1-button'); 43 var menu2Button = $('a.menu2-button'); 44 var menu1 = $('.menu1'); 45 $('html').click(function() { 46 if (menu2Button[0].expanded) { 47 collapseMenu2(); 48 } 49 if (menu1Button[0].expanded) { 50 menu1.slideUp(); 51 menu1Button[0].expanded = false; 52 } 53 }); 54 $('#menu').click(function(event) { 55 event.stopPropagation(); 56 }); 57 58 var collapseMenu2 = function() { 59 $('.menu2').slideUp(function() { 60 $('.menu2').css('display', ''); 61 }); 62 $('a.menu2-button')[0].expanded = false; 63 }; 64 $('a.menu1-button')[0].expanded = false; 65 $('a.menu1-button').click(function() { 66 if (this.expanded) { 67 $('.menu1').slideUp(); 68 if ($('.menu').css('top') != '0px') 69 $('.menu').removeClass('expanded'); 70 this.expanded = false; 71 } 72 else { 73 $('.menu1').slideDown(); 74 $('.menu').addClass('expanded'); 75 if ($('.menu2-button').is(":visible")) 76 collapseMenu2(); 77 else 78 $('.menu2').css('display', ''); 79 this.expanded = true; 80 } 81 }); 82 83 $('a.menu2-button')[0].expanded = false; 84 $('a.menu2-button').click(function() { 85 if (this.expanded) { 86 collapseMenu2(); 87 if ($('.menu').css('top') != '0px') 88 $('.menu').removeClass('expanded'); 89 ; 90 } 91 else { 92 $('.menu2').slideDown(); 93 $('.menu').addClass('expanded'); 94 $('.menu1').slideUp(); 95 this.expanded = true; 96 $('a.menu1-button')[0].expanded = false; 97 } 98 }); 99 var snapped = false; 100 var lastScrollTop = 0; 101 var menuPos = 0; 102 try { 103 //document.createEvent("TouchEvent"); 104 menu = document.getElementById('menu'); 105 var MENU_HEIGHT = 54; 106 var jMenu = $('#menu'); 107 var doc = document.documentElement; 108 var menuMoved = false; 109 document.getElementsByTagName("body")[0].addEventListener("touchend", function() { 110 if (menuMoved && snapped) { 111 if ((-menuPos / MENU_HEIGHT) < 0.3) { 112 jMenu.animate({'top': '0px'}); 113 menuPos = 0; 114 } else { 115 jMenu.animate({'top': -MENU_HEIGHT + 'px'}, function() { 116 jMenu.css('top', '-300px'); 117 }); 118 menuPos = -MENU_HEIGHT; 119 } 120 menuMoved = false; 121 } 122 }, false); 123 124 var onScroll = function() { 125 var currentScrollTop = (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0); 126 if (!snapped && (currentScrollTop > 0)) { 127 menu.className = 'menu stuck'; 128 snapped = true; 129 } 130 if (snapped && (currentScrollTop < 10)) { 131 menu.className = "menu"; 132 menu.style.top = ""; 133 snapped = false;
134 } 135 if (menu2Button[0].expanded) { 136 collapseMenu2(); 137 } 138 if (menu1Button[0].expanded) { 139 menu1.slideUp(); 140 menu1Button[0].expanded = false; 141 } 142 143 if (snapped) { 144 if (currentScrollTop < lastScrollTop) { 145 menuPos = menuPos - (currentScrollTop - lastScrollTop); 146 if (menuPos > 0) { 147 menuPos = 0; 148 menuMoved = false; 149 } else { 150 menuMoved = true; 151 } 152 menu.style.top = menuPos + 'px'; 153 } else { 154 menuPos = menuPos - (currentScrollTop - lastScrollTop); 155 if (menuPos < -MENU_HEIGHT) { 156 menuPos = -MENU_HEIGHT; 157 menuMoved = false; 158 menu.style.top = '-300px'; 159 } else { 160 menuMoved = true; 161 menu.style.top = menuPos + 'px'; 162 } 163 164 } 165 166 } 167 168 lastScrollTop = currentScrollTop; 169 }; 170 171 if (navigator.userAgent.match(/(iPad|iPhone|iPod)/g)) { 172 window.addEventListener('touchmove', onScroll); 173 } else { 174 $(window).scroll(onScroll); 175 } 176 } 177 catch (e) { 178 $(window).scroll(function() { 179 if (menu1Button[0].expanded) { 180 menu1.slideUp(); 181 menu1Button[0].expanded = false; 182 } 183 }); 184 } 185 186}); 187 188 189// slider 190 191slider = function(selector, options) { 192 if (typeof options === 'undefined') 193 { 194 options = {}; 195 } 196 var circle = (typeof options.circle === 'undefined') ? true : options.circle; 197 var autoScroll = (typeof options.auto === 'undefined') ? false : options.auto; 198 var calcMaxSize = (typeof options.calcMaxSize === 'undefined') ? true : options.calcMaxSize; 199 var startOfSlide = (typeof options.startOfSlide === 'undefined') ? 0 : options.startOfSlide; 200 var slides = $(selector + ' .slides .slide'); 201 var slidesCount = slides.length; 202 var onSwitch = (typeof options.onswitch === 'undefined') ? function() { 203 } : options.onswitch; 204 var maxH = 0; 205 slides.each(function(i, e) { 206 if (calcMaxSize) { 207 var h = $(e).height(); 208 if (h > maxH) 209 maxH = h; 210 } 211 $(selector + ' .slider-nav').append('<a href="#" data-rel="' + (+i + 1) + '"></a>'); 212 if (i == 0) { 213 $(selector + ' .slider-nav a').addClass('active'); 214 } 215 }); 216 if (calcMaxSize) 217 slides.height(maxH); 218 $(slides[0]).clone().css({width: 100 / (slidesCount + 1) + '%', float: 'left'}).appendTo(selector + ' .slides'); 219 $(selector + ' .slides-wrapper').css('overflow', 'hidden'); 220 $(selector + ' .slides').css('width', 100 * (slidesCount + 1) + '%'); 221 $(selector + ' .slide').css('display', 'block'); 222 slides.css('width', 100 / (slidesCount + 1) + '%').css('float', 'left'); 223 var intervalId = 0; 224 var slideStarted = false; 225 var busy = false; 226 var current = 1; 227 var setActiveDot = function(num) { 228 $(selector + ' .slider-nav a').removeClass('active'); 229 $($(selector + ' .slider-nav a')[num - 1]).addClass('active'); 230 }; 231 var slider = $(selector + ' .slides'); 232 var navTo = function(num, animate) { 233 if (busy) 234 return false; 235 236 clearTimeout(intervalId); 237 busy = true; 238 239 var slideN1Content = null, slideN1 = null; 240 241 if (num > current + 1) { 242// var slideCurr = slider.find('.slide')[current - 1]; 243// slideN1 = slider.find('.slide')[num - 2]; 244// slideN1Content = slideN1.innerHTML; 245// slideN1.innerHTML = slideCurr.innerHTML; 246// slider.css('margin-left', -(num - 1 - 1) * 100 + '%'); 247 //return; 248 // TODO : hide all slides between 249 $(slider.find('.slide')[1]).hide(); 250 slider.animate({ 251 'margin-left': -(current) * 100 + '%' 252 }, function() { 253 busy = false;
254 // TODO : show all slides between 255 $(slider.find('.slide')[1]).show(); 256 slider.css('margin-left', -(num - 1) * 100 + '%'); 257 }); 258 current = num; 259 setActiveDot(current); 260 startInterval(); 261 onSwitch(); 262 return; 263 } 264 if (num < current - 1) { 265// var slideCurr = slider.find('.slide')[current - 1]; 266// slideN1 = slider.find('.slide')[num]; 267// slideN1Content = slideN1.innerHTML; 268// slideN1.innerHTML = slideCurr.innerHTML; 269// slider.css('margin-left', -(num - 1 + 1) * 100 + '%'); 270 slider.css('margin-left', -(num) * 100 + '%'); 271 $(slider.find('.slide')[1]).hide(); 272 slider.animate({ 273 'margin-left': -(num - 1) * 100 + '%' 274 }, function() { 275 busy = false; 276 // TODO : show all slides between 277 $(slider.find('.slide')[1]).show(); 278 }); 279 current = num;
280 setActiveDot(current); 281 startInterval(); 282 onSwitch(); 283 return; 284 } 285 286 current = num; 287 setActiveDot(current); 288 slider.animate({ 289 'margin-left': -(num - 1) * 100 + '%' 290 }, function() { 291 busy = false; 292 startInterval(); 293// if (slideN1) { 294// slideN1.innerHTML = slideN1Content; 295// } 296 }); 297 onSwitch(); 298 return false; 299 }; 300 301 if (startOfSlide) { 302 //current = num; 303 slider.css('margin-left', -(startOfSlide - 1) * 100 + '%'); 304 setActiveDot(startOfSlide); 305 current = startOfSlide; 306 } 307 var startInterval = function() { 308 if (!autoScroll) 309 return false; 310 if (typeof intervalId !== 'undefined') 311 clearTimeout(intervalId); 312 intervalId = setTimeout(function() { 313 nav(1); 314 }, options.interval || 10000); 315 } 316 var nav = function(delta) { 317 if (busy) 318 return false; 319 clearTimeout(intervalId); 320 busy = true; 321 var slider = $(selector + ' .slides'); 322 current += delta; 323 if (current > slidesCount) { 324 if (circle) { 325 slider.animate({ 326 'margin-left': -(current - 1) * 100 + '%' 327 }, function() { 328 busy = false; 329 current = 1; 330 slider.css('margin-left', 0);
331 setActiveDot(current); 332 startInterval(); 333 }); 334 onSwitch(); 335 return; 336 } else { 337 current = slidesCount; 338 } 339 } 340 if (current < 1) { 341 if (circle) { 342 slider.css('margin-left', -slidesCount * 100 + '%'); 343 current = slidesCount; 344 } else { 345 current = 1; 346 } 347 } 348 slider.animate({ 349 'margin-left': -(current - 1) * 100 + '%' 350 }, function() { 351 busy = false; 352 setActiveDot(current); 353 startInterval(); 354 }); 355 onSwitch(); 356 return false; 357 }; 358 $(selector + ' .slider-prev').click(function() { 359 nav(-1); 360 return false; 361 }); 362 $(selector + ' .slider-next').click(function() { 363 nav(1); 364 return false; 365 }); 366 $(selector + ' .slider-nav a').click(function() { 367 var me = $(this); 368 var index = +me.attr('data-rel'); 369 navTo(index); 370 return false; 371 }); 372 try { 373 document.createEvent("TouchEvent"); 374 $(selector + ' .slides')[0].addEventListener('swr', function() { 375 nav(-1); 376 return false; 377 }, false); 378 $(selector + ' .slides')[0].addEventListener('swl', function() { 379 nav(1); 380 return false; 381 }, false); 382 } catch (e) { 383 } 384 385 if (autoScroll) { 386 var top = $(selector).position().top - $(window).height() 387 + $(selector).height(); 388 if ($(window).scrollTop() > top) { 389 startInterval(); 390 slideStarted = true; 391 } 392 $(window).scroll(function() { 393 if (slideStarted) 394 return false; 395 if ($(window).scrollTop() > top) { 396 startInterval(); 397 slideStarted = true; 398 } 399 }); 400 } 401} 402
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.