1/*===== full height main visual =====*/ 2;(function($, window, undefined) { 3 'use strict'; 4 5 var pluginName = 'full-height', 6 win = $(window); 7 8 function Plugin(element, options) { 9 this.element = $(element); 10 this.options = $.extend({}, $.fn[pluginName].defaults, this.element.data(), options); 11 this.init(); 12 } 13 14 Plugin.prototype = { 15 init: function() { 16 var el = this.element; 17 el.css('height', win.height()); 18 19 win.on('resize.' + pluginName, function() { 20 $('[data-full-height]').css('height', win.height()); 21 }); 22 win.on('load.' + pluginName, function() { 23 $('[data-full-height]').css('height', win.height()); 24 }); 25 26 }, 27 28 destroy: function() { 29 $.removeData(this.element[0], pluginName); 30 } 31 }; 32 33 $.fn[pluginName] = function(options, params) { 34 return this.each(function() { 35 var instance = $.data(this, pluginName); 36 if (!instance) { 37 $.data(this, pluginName, new Plugin(this, options)); 38 } else if (instance[options]) { 39 instance[options](params); 40 } 41 }); 42 }; 43 44 $.fn[pluginName].defaults = { 45 46 }; 47 48 $(function() { 49 $('[data-' + pluginName + ']')[pluginName](); 50 }); 51 52}(jQuery, window)); 53 54/*=====menu=====*/ 55;(function($, window, undefined) { 56 'use strict'; 57 58 var pluginName = 'menu', 59 win = $(window), 60 body = $('body'), 61 offsetWin; 62 63 function Plugin(element, options) { 64 this.element = $(element); 65 this.options = $.extend({}, $.fn[pluginName].defaults, this.element.data(), options); 66 this.init(); 67 } 68 69 Plugin.prototype = { 70 init: function() { 71 var that = this, 72 opts = that.options; 73 74 that.forWait = true; 75 that.isShow = false; 76 that.vars = {}; 77 that.vars.btnMenu = this.element; 78 that.vars.mainMenu = $(opts.mainMenu); 79 that.vars.menuWidth = that.vars.mainMenu.outerWidth(); 80 that.vars.container = $(opts.container); 81 82 that.vars.btnMenu.on('click.' + pluginName, function(e) { 83 e.preventDefault(); 84 if(that.isRun) { 85 return; 86 } 87 that[(that.isShow) ? 'hideMenu' : 'showMenu'](); 88 89 }); 90 91 92 that.vars.mainMenu.on('touchstart.' + pluginName, function(e) { 93 var inner = $(this).find('.inner'); 94 95 if(!inner.is(e.target) && inner.has(e.target).length === 0) { 96 that.hideMenu(); 97 } 98 99 }); 100 101 if($('html').hasClass('desktop')) { 102 that.vars.mainMenu.on('click.' + pluginName, function(e) { 103 var inner = $(this).find('.inner'); 104 105 if(!inner.is(e.target) && inner.has(e.target).length === 0) { 106 that.hideMenu(); 107 } 108 109 }); 110 } 111 112 win.on('resize.' + pluginName, function() { 113 if(win.width() <= 767 && that.isShow && $('html').hasClass('ios')) { 114 that.resize(); 115 } 116 117 if(win.width() > 767 && that.isShow) { 118 body.removeClass('pin-body').removeAttr('style'); 119 that.vars.mainMenu.removeClass('active').removeAttr('style'); 120 that.isRun = false; 121 that.isShow = false; 122 } 123 }); 124 125 }, 126 127 showMenu: function() { 128 var that = this; 129 that.isRun = true; 130 offsetWin = window.pageYOffset; 131 132 that.vars.mainMenu.animate( 133 {'left': 0}, 134 that.options.duration, 'linear', 135 function() { 136 $(this).addClass('active'); 137 if($('html').hasClass('android') || $('html').hasClass('desktop')) { 138 body 139 .addClass('pin-body') 140 .css('top', -offsetWin); 141 } 142 if($('html').hasClass('ios')) { 143 that.resize(); 144 } 145 that.isRun = false; 146 that.isShow = true; 147 } 148 ); 149 }, 150 151 hideMenu: function() { 152 var that = this; 153 that.isRun = true; 154 155 that.vars.mainMenu.removeClass('active').animate( 156 {'left': '100%'}, 157 that.options.duration, 'linear', 158 function() { 159 if($('html').hasClass('ios')) { 160 that.vars.container.removeAttr('style'); 161 } 162 that.vars.mainMenu.removeAttr('style'); 163 body 164 .removeClass('pin-body') 165 .removeAttr('style'); 166 win.scrollTop(offsetWin); 167 that.isRun = false;
168 that.isShow = false; 169 } 170 ); 171 }, 172 173 resize: function() { 174 var that = this; 175 176 that.vars.container 177 .height(win.height() + offsetWin) 178 .css('margin-top', -offsetWin); 179 }, 180 181 destroy: function() { 182 $.removeData(this.element[0], pluginName); 183 } 184 }; 185 186 $.fn[pluginName] = function(options, params) { 187 return this.each(function() { 188 var instance = $.data(this, pluginName); 189 if (!instance) { 190 $.data(this, pluginName, new Plugin(this, options)); 191 } else if (instance[options]) { 192 instance[options](params); 193 } 194 }); 195 }; 196 197 $.fn[pluginName].defaults = { 198 mainMenu: '.main-menu', 199 container: '.container', 200 duration: 500 201 }; 202 203 $(function() { 204 $('[data-' + pluginName + ']')[pluginName](); 205 }); 206 207}(jQuery, window)); 208/*===== Scroll header =====*/ 209;(function($, window, undefined) { 210 'use strict'; 211 212 var pluginName = 'scroll-header', 213 win = $(window); 214 215 function Plugin(element, options) { 216 this.element = $(element); 217 this.options = $.extend({}, $.fn[pluginName].defaults, this.element.data(), options); 218 this.init(); 219 } 220 221 Plugin.prototype = { 222 init: function() { 223 var header = $('header:not(.header-contact)'); 224 225 win.on('scroll.' + pluginName, function() { 226 if($(this).scrollTop() >= header.innerHeight()) { 227 header.addClass('fixed-header'); 228 } 229 else if($(this).scrollTop() === 0 && $('.main-menu').hasClass('active')) { 230 header.addClass('fixed-header'); 231 } 232 else { 233 header.removeClass('fixed-header'); 234 } 235 236 if(win.width() > 767) { 237 if(win.scrollLeft() > 0) { 238 header.css('left', -win.scrollLeft()); 239 } 240 else { 241 header.css('left', 0).removeAttr('style'); 242 } 243 } 244 else { 245 header.css('left', 0).removeAttr('style'); 246 } 247 }); 248 249 }, 250 251 destroy: function() { 252 $.removeData(this.element[0], pluginName); 253 } 254 }; 255 256 $.fn[pluginName] = function(options, params) { 257 return this.each(function() { 258 var instance = $.data(this, pluginName); 259 if (!instance) { 260 $.data(this, pluginName, new Plugin(this, options)); 261 } else if (instance[options]) { 262 instance[options](params); 263 } 264 }); 265 }; 266 267 $.fn[pluginName].defaults = { 268 269 }; 270 271 $(function() { 272 $('[data-' + pluginName + ']')[pluginName](); 273 }); 274 275}(jQuery, window)); 276 277/*===== Scroll offset =====*/ 278;(function($, window, undefined) { 279 'use strict'; 280 281 var pluginName = 'scroll-offset'; 282 283 function Plugin(element, options) { 284 this.element = $(element); 285 this.options = $.extend({}, $.fn[pluginName].defaults, this.element.data(), options); 286 this.init(); 287 } 288 289 Plugin.prototype = { 290 init: function() { 291 var that = this; 292 293 that.forWait = true; 294 295 this.element.on('click.' + pluginName, function(e) { 296 e.preventDefault(); 297 that.scrollOffset($(this)); 298 }); 299 }, 300 301 scrollOffset: function(el) { 302 var that = this; 303 304 var itemCurrt = $(el).attr('href'); 305 if(itemCurrt.length) { 306 if(that.forWait) { 307 that.forWait = false; 308 $('html, body').animate({ 309 scrollTop: $(itemCurrt).offset().top 310 }, that.options.duration, function() { 311 that.forWait = true; 312 }); 313 } 314 } 315 }, 316 317 destroy: function() { 318 $.removeData(this.element[0], pluginName); 319 } 320 }; 321 322 $.fn[pluginName] = function(options, params) { 323 return this.each(function() { 324 var instance = $.data(this, pluginName); 325 if (!instance) { 326 $.data(this, pluginName, new Plugin(this, options)); 327 } else if (instance[options]) { 328 instance[options](params); 329 } 330 }); 331 }; 332 333 $.fn[pluginName].defaults = { 334 duration: 500 335 }; 336 337 $(function() { 338 $('[data-' + pluginName + ']')[pluginName](); 339 }); 340 341}(jQuery, window)); 342 343/*===== scroll to top =====*/ 344;(function($, window, undefined) { 345 'use strict'; 346 347 var pluginName = 'scroll-top'; 348 349 function Plugin(element, options) { 350 this.element = $(element); 351 this.options = $.extend({}, $.fn[pluginName].defaults, this.element.data(), options); 352 this.init(); 353 } 354 355 Plugin.prototype = { 356 init: function() { 357 var el = this.element; 358 359 el.on('click.' + pluginName, function(e) { 360 e.preventDefault(); 361 $('html, body').animate({ scrollTop: 0 }); 362 }); 363 364 }, 365 366 destroy: function() { 367 $.removeData(this.element[0], pluginName); 368 } 369 }; 370 371 $.fn[pluginName] = function(options, params) { 372 return this.each(function() { 373 var instance = $.data(this, pluginName); 374 if (!instance) { 375 $.data(this, pluginName, new Plugin(this, options)); 376 } else if (instance[options]) { 377 instance[options](params); 378 } 379 }); 380 }; 381 382 $.fn[pluginName].defaults = { 383 384 }; 385 386 $(function() { 387 $('[data-' + pluginName + ']')[pluginName](); 388 }); 389 390}(jQuery, window)); 391 392/*===== Slick slider =====*/ 393;(function($, window, undefined) { 394 'use strict'; 395 396 var pluginName = 'slick-banner'; 397 398 function Plugin(element, options) { 399 this.element = $(element); 400 this.options = $.extend({}, $.fn[pluginName].defaults, this.element.data(), options); 401 this.init(); 402 } 403 404 Plugin.prototype = { 405 init: function() { 406 407 this.element.find('.slide-item').css('height', $(window).height()); 408 409 var optionSlick = { 410 autoplay: true, 411 infinite: true,
412 useCSS: false, 413 pauseOnHover: false, 414 arrows: false, 415 fade: true, 416 cssEase: 'linear' 417 }; 418 419 this.element.slick(optionSlick); 420 $(window).on('resize, load.' + pluginName, function() { 421 $('[data-slick-banner]').find('.slide-item').css('height', $(window).height()); 422 }); 423 424 }, 425 426 destroy: function() { 427 $.removeData(this.element[0], pluginName); 428 } 429 }; 430 431 $.fn[pluginName] = function(options, params) { 432 return this.each(function() { 433 var instance = $.data(this, pluginName); 434 if (!instance) { 435 $.data(this, pluginName, new Plugin(this, options)); 436 } else if (instance[options]) { 437 instance[options](params); 438 } 439 }); 440 }; 441 442 $.fn[pluginName].defaults = { 443 444 }; 445 446 $(function() { 447 $('[data-' + pluginName + ']')[pluginName](); 448 }); 449 450}(jQuery, window)); 451 452/*===== Slick slider sm =====*/ 453$(window).on('load resize', function () { 454 $('.slick-banner-sm').find('.slide-item').css('height', $(window).height()); 455}); 456;(function($, window, undefined) { 457 'use strict'; 458 459 var pluginName = 'slick-banner-sm'; 460 461 function Plugin(element, options) { 462 this.element = $(element); 463 this.options = $.extend({}, $.fn[pluginName].defaults, this.element.data(), options); 464 this.init(); 465 } 466 467 Plugin.prototype = { 468 init: function() { 469 470 this.element.find('.slide-item').css('height', $(window).height()); 471 472 var optionSlick = { 473 autoplay: true, 474 infinite: true, 475 useCSS: false, 476 pauseOnHover: false, 477 arrows: false, 478 fade: true, 479 cssEase: 'linear' 480 }; 481 482 this.element.slick(optionSlick); 483 484 }, 485 486 destroy: function() { 487 $.removeData(this.element[0], pluginName); 488 } 489 }; 490 491 $.fn[pluginName] = function(options, params) { 492 return this.each(function() { 493 var instance = $.data(this, pluginName); 494 if (!instance) { 495 $.data(this, pluginName, new Plugin(this, options)); 496 } else if (instance[options]) { 497 instance[options](params); 498 } 499 }); 500 }; 501 502 $.fn[pluginName].defaults = { 503 504 }; 505 506 $(function() { 507 $('[data-' + pluginName + ']')[pluginName](); 508 }); 509 510}(jQuery, window)); 511 512 513 514/*===== tab sm =====*/ 515;(function($, window, undefined) { 516 'use strict'; 517 518 var pluginName = 'tab-nav-sm'; 519 520 function Plugin(element, options) { 521 this.element = $(element); 522 this.options = $.extend({}, $.fn[pluginName].defaults, this.element.data(), options); 523 this.init(); 524 } 525 526 Plugin.prototype = { 527 init: function() { 528 529 this.element.easytabs({ 530 updateHash: false 531 }); 532 533 }, 534 535 destroy: function() { 536 $.removeData(this.element[0], pluginName); 537 } 538 }; 539 540 $.fn[pluginName] = function(options, params) { 541 return this.each(function() { 542 var instance = $.data(this, pluginName); 543 if (!instance) { 544 $.data(this, pluginName, new Plugin(this, options)); 545 } else if (instance[options]) { 546 instance[options](params); 547 } 548 }); 549 }; 550 551 $.fn[pluginName].defaults = { 552 }; 553 554 $(function() { 555 $('[data-' + pluginName + ']')[pluginName](); 556 }); 557 558}(jQuery, window)); 559 560/*===== tab =====*/ 561;(function($, window, undefined) { 562 'use strict'; 563 564 var pluginName = 'tab-nav'; 565 566 function Plugin(element, options) { 567 this.element = $(element); 568 this.options = $.extend({}, $.fn[pluginName].defaults, this.element.data(), options); 569 this.init(); 570 } 571 572 Plugin.prototype = { 573 init: function() { 574 if($('html').hasClass('tablet')) { 575 this.element.easytabs({ 576 updateHash: false 577 }); 578 } 579 else if($('html').hasClass('desktop')) { 580 this.element.find('.list-tab-md li').each(function() { 581 var link = $(this).find('a'); 582 link.on('click.' + pluginName, function(e) { 583 e.preventDefault(); 584 }); 585 }); 586 587 this.element.easytabs({ 588 updateHash: false, 589 event: 'mouseenter' 590 }); 591 } 592 593 }, 594 595 destroy: function() { 596 $.removeData(this.element[0], pluginName); 597 } 598 }; 599 600 $.fn[pluginName] = function(options, params) { 601 return this.each(function() { 602 var instance = $.data(this, pluginName); 603 if (!instance) { 604 $.data(this, pluginName, new Plugin(this, options)); 605 } else if (instance[options]) { 606 instance[options](params); 607 } 608 }); 609 }; 610 611 $.fn[pluginName].defaults = { 612 }; 613 614 $(function() { 615 $('[data-' + pluginName + ']')[pluginName](); 616 }); 617 618}(jQuery, window)); 619 620var app = app || {}; 621 622app.init = function () { 623 624 app.viewport(); 625 626}; 627 628app.viewport = function() { 629 if (screen.width > 767 && screen.width < 1000 ) { 630 var ww = ( $(window).width() < window.screen.width ) ? $(window).width() : window.screen.width; 631 $('meta[name="viewport"]').attr('content', 'width=1000, initial-scale=' + ww/1000); 632 } else { 633 $('meta[name="viewport"]').attr('content', 'width=device-width, initial-scale=1, maximum-scale=1, user-scalable=1.0'); 634 } 635} 636 637 638$(function() { 639 640 app.init(); 641
vendor: 3 bytes, line 642
642});
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.