1(function ($) { 2 3 function whichTransitionEvent() { 4 var t, el = document.createElement("elementotest"); 5 var transitions = { 6 "transition": "transitionend", 7 "OTransition": "oTransitionEnd", 8 "MozTransition": "transitionend", 9 "WebkitTransition": "webkitTransitionEnd" 10 } 11 for (t in transitions) { 12 if (el.style[t] !== undefined) { 13 return transitions[t]; 14 } 15 } 16 } 17 var transitionEvent = whichTransitionEvent(); 18 19 // funzioni varie al resize // 20 var resizewin = function () { 21 $heightForReadMore = 350; 22 $w = $(window).width(); 23 if ($(window).width() > 650) { 24 $('body').addClass("desktop"); 25 } 26 if ($(window).width() <= 650) { 27 $('body').removeClass("desktop"); 28 $heightForReadMore = 250; 29 } 30 31 }; 32 resizewin(); 33 $(window).resize(resizewin); 34 35 // only mobile slider 36(function () { 37 'use strict'; 38 const breakpoint = window.matchMedia('(min-width:650px)'); 39 let mySwiper; 40 const breakpointChecker = function () { 41 if (breakpoint.matches === true) { 42 if (mySwiper !== undefined) mySwiper.destroy(true, true); 43 $('.mobile-swiper-container .card-wrapper').removeClass("swiper-wrapper"); 44 $('.mobile-slider .slider-functions').css({ display: "none" }); 45 return; 46 } else if (breakpoint.matches === false) { 47 $('.mobile-swiper-container .card-wrapper').addClass("swiper-wrapper"); 48 return enableSwiper(); 49 } 50 }; 51 const enableSwiper = function () { 52 if ((typeof Swiper === "undefined")) { 53 return; 54 } 55 $('.mobile-slider .slider-functions').css({ display: "block" }); 56 mySwiper = new Swiper('.mobile-swiper-container', { 57 loop: false, 58 slidesPerView: 'auto', 59 centeredSlides: true, 60 speed: 500, 61 pagination: { 62 el: '.mobile-slider .swiper-pagination', 63 type: 'fraction', 64 }, 65 autoplay: { 66 delay: 4500, 67 disableOnInteraction: false, 68 stopOnLastSlide: false 69 }, 70 navigation: { 71 nextEl: '.mobile-slider .swiper-button-next', 72 prevEl: '.mobile-slider .swiper-button-prev', 73 }, 74 }); 75 }; 76 breakpoint.addListener(breakpointChecker); 77 breakpointChecker(); 78})(); 79 // end only mobile slider 80 81// accordion // 82if ($(".accordion").length) { 83 var allSectionsPanelsTitle = $('.toggler'); 84 var allSectionsPanels = $('.accordion__item__body'); 85 $('.accordion .accordion__item__title').addClass("toggler"); 86 $('.toggler').click(function (event) { 87 $this = $(this); 88 $targetTitle = $this; 89 $target = $this.parent().find('.accordion__item__body'); 90 if (!$target.hasClass('accordion__item__body--open')) { 91 allSectionsPanelsTitle.removeClass('active'); 92 allSectionsPanels.removeClass('accordion__item__body--open'); 93 $targetTitle.addClass('active'); 94 $target.addClass('accordion__item__body--open'); 95 setTimeout(() => {$('body, html').animate({scrollTop: $(this).offset().top - 90}, 500)}, 10); 96 } 97 else { 98 $target.removeClass('accordion__item__body--open'); 99 $targetTitle.removeClass('active'); 100 } 101 event.preventDefault(); 102 return false; 103 }); 104} 105/* $('.close-item-bottom').click(function () { 106 $this = $this.closest('.close-item-bottom'); 107 $targetTitle = $this; 108 $target = $this.parent().find('.accordion__item__body'); 109 if (!$target.hasClass('accordion__item__body--open')) { 110 allSectionsPanelsTitle.removeClass('active'); 111 allSectionsPanels.removeClass('accordion__item__body--open'); 112 $targetTitle.addClass('active'); 113 $target.addClass('accordion__item__body--open'); 114 } 115 else { 116 $target.removeClass('accordion__item__body--open'); 117 $targetTitle.removeClass('active'); 118 } 119 event.preventDefault(); 120 return false; 121 }); */ 122 123// accordion orizzontale stile tab per "affina ricerca" // 124// if ($(".accordion-horizzontal").length) { 125 $(".accordion-horizzontal__item__body:not('.accordion-horizzontal__item__body--open')").hide(); 126 $(document).on('click', '.toggler-horizzontal', function (event) { 127 event.preventDefault(); 128 var $itemLink = $(this).attr('item-content'); 129 var $itemContent = $(this).parent().next().find('#' + $itemLink + '.accordion-horizzontal__item__body'); 130 var $itemlTitleLink = $(this).parent().find('.accordion__item__title') 131 132 if($(this).parent().next().find('.accordion-horizzontal__item__body').eq($(this).index()).hasClass('accordion-horizzontal__item__body--open')) { 133 $(this).parent().next().find('.accordion-horizzontal__item__body--open').removeClass('accordion-horizzontal__item__body--open').slideToggle(); 134 // $itemlTitleLink.removeClass('active'); 135 } else if($(this).parent().next().find('#' + $itemLink + '').hasClass('accordion-horizzontal__item__body--open')) { 136 $itemContent.removeClass('accordion-horizzontal__item__body--open').slideToggle(); 137 } 138 else{ 139 $itemContent.addClass('accordion-horizzontal__item__body--open').slideToggle(); 140 } 141 $(this).toggleClass('active'); 142 }); 143// } 144 145// read more // 146if (typeof $('.read-more').readmore !== "undefined") { 147 $('.read-more').readmore({ 148 speed: 500, 149 collapsedHeight: $heightForReadMore, 150 embedCSS: false, 151 moreLink: '<p class=""><a href="#" class="read-more__button read-more__button--open"><span>Leggi tutto</span></a></p>', 152 lessLink: '<p class=""><a href="#" class="read-more__button read-more__button--close"><span>Chiudi</span></a></p>', 153 afterToggle: function (trigger, element, expanded) { 154 if (expanded) { 155 $('.read-more').addClass("read-more--opened"); 156 } 157 else { 158 $('.read-more').removeClass("read-more--opened"); 159 } 160 } 161 }); 162} 163 164// modulo tabs // 165if ($(".js-tabs").length) { 166 167 $(".js-tabs").each(function(){ 168 var $this = $(this); 169 var $container = $this.parent(); 170 var $tabsToggleGroup = $this.find(".tabs__toggle-group"); 171 var $tabs = $this.find(".tabs__toggle"); 172 var $activeTab = $this.find(".tabs__toggle--active"); 173 var $tabContents = $this.find(".tabs__tab"); 174 var $scrollLeftBtn = $this.find(".js-action--scroll-left"); 175 var $scrollRightBtn = $this.find(".js-action--scroll-right"); 176 177 var selectedTabIndex = 0; 178 179 var updateTabContentStyle = function() { 180 if ( $(".tabs__tab--active .tabs__tab__img").length ) { 181 $(".tabs__tab--active").addClass("tabs__tab--photo"); 182 } 183 else{ 184 $(".tabs__tab--active").addClass("tabs__tab--no-photo"); 185 } 186 }; 187 188 $tabContents 189 .hide() 190 .eq($tabs.index($activeTab)) 191 .show(); 192 updateTabContentStyle(); 193 194 $tabs.on("click", function() { 195 var $tab = $(this); 196 var tabIndex = $tabs.index($tab); 197 var $activeTab = $this.parent().find(".tabs__toggle--active"); 198 selectedTabIndex = tabIndex; 199 $activeTab.removeClass("tabs__toggle--active"); 200 $tab.addClass("tabs__toggle--active"); 201 $activeTab.removeClass("tabs__toggle--active"); 202 203 $tabContents 204 .hide() 205 .removeClass("tabs__tab--active") 206 .eq(tabIndex) 207 .addClass("tabs__tab--active") 208 .fadeIn('slow') 209 .show(); 210 updateTabContentStyle(); 211 }); 212 var setInvisible = function(elem) { 213 elem.css('visibility', 'hidden'); 214 }; 215 var setVisible = function(elem) { 216 elem.css('visibility', 'visible'); 217 }; 218 $tabs.wrapAll('<div class="tabs__toggle-group--inner" />'); 219 $tabsToggleGroup.find('.tabs__toggle-group--inner').wrap('<div class="tabs__toggle-group--outer"/>'); 220 var $outer = $this.find(".tabs__toggle-group--outer"); 221 222 var scrollWidth, totalWidth, maxWidth; 223 var updateUI = function() { 224 totalWidth = 0; 225 scrollWidth = new Array(); 226 $($tabs).each(function() { 227 scrollWidth.push($(this).outerWidth( true )); 228 totalWidth += $(this).outerWidth( true ); 229 }); 230 maxWidth = $outer.outerWidth(true); 231 if (totalWidth > maxWidth) { 232 setVisible($scrollRightBtn); 233 } 234 }; 235 updateUI(); 236 var clickNum=0; 237 $scrollLeftBtn.click(function() { 238 setVisible($scrollRightBtn); 239 clickNum--; 240 var leftPos = $outer.scrollLeft(); 241 $outer.animate({ 242 scrollLeft: leftPos - scrollWidth[clickNum] 243 }, 600, function() { 244 if ($outer.scrollLeft() <= 0) { 245 setInvisible($scrollLeftBtn); 246 } 247 }); 248 }); 249 250 $scrollRightBtn.click(function() { 251 setVisible($scrollLeftBtn); 252 var leftPos = $outer.scrollLeft(); 253 if ((totalWidth - (leftPos + scrollWidth[clickNum])) <= maxWidth) { 254 setInvisible($scrollRightBtn); 255 } 256 $outer.animate({ 257 scrollLeft: leftPos + scrollWidth[clickNum] 258 }, 600); 259 clickNum++; 260 }); 261 262 $(window).resize(function() { 263 updateUI(); 264 }); 265 266 }); 267 268} 269 270// plugin menù top // 271 var pluginName = 'menuTop'; 272 273 function Accordion($selector, options) { 274 this.$selector = $selector; 275 this.config = $.extend({}, this._defaults, options || {}); 276 this.detect = { 277 children: this.$selector.find(this.config.descendant.ul + ', ' + this.config.descendant.div), 278 clickTarget: '.' + this.$selector.attr('class') + ' ' + this.config.eventTarget 279 }; 280 this._init(); 281 } 282 283 Accordion.prototype = { 284 285 '_defaults': { 286 descendant: { 287 ul: 'div', 288 div: 'li > div ', 289 divs: 'li > div > div', 290 lis: 'li > div > li ', 291 subMenus: 'submenu', 292 }, 293 dataValue: 'accordiated', 294 className: 'active', 295 eventTarget: 'a', 296 297 }, 298 '_init': function () { 299 var title = ''; 300 if (!this.$selector.length) return; 301 this._menuInit(); 302 this._initEvent(); 303 }, 304 '_menuInit': function () { 305 var _self = this; 306 if (this.$selector.data(this.config.dataValue)) return false;
307 $.each(this.detect.children, function () { 308 var $this = $(this); 309 _self.$selector.data(_self.config.dataValue, true); 310 $this.prev('a').addClass('submenu-icon'); 311 }); 312 }, 313 '_initEvent': function () { 314 $(document).on('click.acc.ck', this.detect.clickTarget, $.proxy(this._activate, this)); 315 this._hashCheck(); 316 }, 317 '_activate': function (e) { 318 var $this = $(e.target); 319 var $siblings = $this 320 .toggleClass(this.config.className) 321 .parent('li') 322 .toggleClass(this.config.className) 323 .siblings() 324 .removeClass(this.config.className); 325 $siblings 326 .find('a') 327 .removeClass(this.config.className); 328 $siblings 329 .find('li') 330 .removeClass(this.config.className); 331 $siblings 332 .find('.main-nav__submenu-sub--active') 333 .removeClass("main-nav__submenu-sub--active"); 334 335 var target = $this.attr("target"); 336 var href= $this.attr("href"); 337 338 if(href != "#"){ 339 $(".main-nav").removeClass("active-desk"); 340 $(".main-nav *").removeClass("active"); 341 if (target) { 342 window.open(href, target); 343 return; 344 } 345 window.location.href = href; 346 } 347 else{ 348 this._effect($this); 349 } 350 }, 351 '_effect': function (el, effect) { 352 if ($(el).is(':not(.active)')) { 353 // console.log(el); 354 } 355 $(el).siblings(this.config.descendant.ul + ', ' + this.config.descendant.div + ', ' + this.config.descendant.divs).addClass('main-nav__submenu-sub--active'); 356 $(".main-nav").addClass("active-desk"); 357 if( $w <= 650){ 358 $SubMenuHeight = $(el).next("div.main-nav__submenu-sub--active").height(); 359 $('.main-nav__item.active .main-nav__submenu-sub--active').css("height", $SubMenuHeight + 200); 360 if(!$('.submenu > .backmenu-row').length){ 361 $('.submenu').each(function(){ 362 var subvalue = $(this).prev('a').text(); 363 $(this).prepend('<div class="backmenu-row"><a href="#" class="back-trigger">'+subvalue+'</a></div>'); 364 365 }); 366 } 367 } 368 else{ 369 $('.main-nav__item.active .main-nav__submenu-sub--active').css("height", 'initial'); 370 371 } 372 this._updateActiveMenu(el); 373 }, 374 375 '_updateActiveMenu': function(el) { 376 if( $w <= 650){ 377 $(document).on('click', '.backmenu-row', function(){ 378 $(this).closest('.main-nav__item').removeClass('active'); 379 $(this).closest('.main-nav__link').removeClass('active'); 380 $(this).parent('.main-nav__submenu').removeClass('main-nav__submenu-sub--active'); 381 return false; 382 }) 383 } 384 else{ 385 $(el).parent('.main-nav__submenu').removeClass('main-nav__submenu-sub--active'); 386 } 387 }, 388 '_hashCheck': function () { 389 var hash = (location.hash) ? this.$selector.find('a[href="' + location.hash + '"]')[0] : ''; 390 if (hash) { 391 392 this._effect(hash, 'toggle'); 393 if (this.$selector) { 394 $(hash).parents('div').show(); 395 } 396 } 397 } 398 }; 399 400 $.fn[pluginName] = $.fn[pluginName] || function (options) { 401 var $this = $(this); 402 return $.each($this, function (idx, el) { 403 var $selector = $this.eq(idx); 404 if (!$.data(this, 'plugin_' + pluginName)) { 405 $.data(this, 'plugin_' + pluginName, new Accordion($selector, options)) 406 } 407 return $selector; 408 }) 409 }; 410 411// 412 413// SVG MAP // 414 415if ($(".svg-map").length) { 416// mouseover sulle scritte accende la regione //
417$("[id^='regione']").attr('data-click-state', 0); 418$("[id^='regioni-nome_']").attr('data-click-state', 0); 419 420$("[id^='regioni-nome_']") 421.mouseover(function(){ 422 thisID = $(this).attr("id"); 423 thisREGION = thisID.indexOf('_'); 424 region = thisID.substring(thisREGION); 425 $("#regione"+region).addClass('svg-hover-color'); 426}) 427.mouseleave(function () { 428 if($("#regione"+region).hasClass('clicked')){ 429 return 430 } 431 else { 432 $("#regione"+region).removeClass('svg-hover-color'); 433 } 434}) 435// click sui nomi delle regioni // 436.on('click',function(e){ 437 e.preventDefault(); 438 $("[id^='regione']").not($("#regione"+region)).attr('data-click-state', 0); 439 $("[id^='regione']").not($("#regione"+region)).attr('fill', '#ffffff'); 440 var target = $(this).parent().attr("target"); 441 var href= $(this).parent().attr("href"); 442 443 if($("#regione"+region).attr('data-click-state') == 1) { 444 $("#regione"+region).attr('data-click-state', 0); 445 $('.info-box').css('display','none'); 446 if(href != "#"){ 447 if (target) { 448 window.open(href, target); 449 return; 450 } 451 window.location.href = href; 452 } 453 } 454 else { 455 $("#regione"+region).attr('data-click-state', 1); 456 $("[id^='regione']").removeClass('svg-hover-color'); 457 $("[id^='regione']").removeClass('clicked'); 458 $("#regione"+region).addClass('svg-hover-color'); 459 $("#regione"+region).addClass('clicked'); 460 $('.info-box').css('display','block'); 461 } 462 }); 463
464// click sulle aree delle regioni - il mouseover è gestito da css // 465$("[id^='regione']").on('click',function(e){ 466 e.preventDefault(); 467 $("[id^='regione']").not(this).attr('data-click-state', 0); 468 target = $(this).parent().attr("target"); 469 href= $(this).parent().attr("href"); 470 thisID = $(this).attr("id"); 471 thisREGION = thisID.indexOf('_'); 472 var region = thisID.substring(thisREGION); 473 474 if($(this).attr('data-click-state') == 1) { 475 $(this).attr('data-click-state', 0); 476 $('.info-box').css('display','none'); 477 if(href != "#"){ 478 if (target) { 479 window.open(href, target); 480 return; 481 } 482 window.location.href = href; 483 } 484 } 485 else { 486 $(this).attr('data-click-state', 1); 487 $("[id^='regione']").attr('fill', '#ffffff'); 488 $("[id^='regione']").removeClass('clicked'); 489 $("[id^='regione']").removeClass('svg-hover-color'); 490 $(this).addClass('svg-hover-color'); 491 492 $("[id^='regions-nome__over']").removeClass('svg-nome-hover'); 493 $("#regions-nome__over"+region).addClass('svg-nome-hover'); 494 $(this).addClass('clicked'); 495 $('.info-box').css('display','block'); 496 } 497 }); 498} 499 500 501$(function(){ 502 $('#menu .main-nav__list').menuTop(); 503 504 // script menù mobile // 505 var wlim=650; 506 var closeall=function(){ 507 $("body").removeClass("menu-opened"); 508 $(".header").parent().find('.active').removeClass('active'); 509 $(".header").parent().find('.main-nav__submenu-sub--active').removeClass('main-nav__submenu-sub--active'); 510 } 511 var myresize=function(){ 512 w = $(window).width(); 513 if (w<wlim && $('#TabMenusHeaderContent .header_menus--mobile-menu-item').length <= 0) { 514 $('.header__content .header_menus--mobile-menu-block .header_menus--mobile-menu-item').detach().prependTo('#TabMenusHeaderContent').hide(); 515 closeall(); 516 } else if (w>=wlim && $('#TabMenusHeaderContent .header_menus--mobile-menu-item').length > 0) { 517 $('#TabMenusHeaderContent .header_menus--mobile-menu-item').show().detach().prependTo('.header__content .header_menus--mobile-menu-block'); 518 closeall(); 519 } 520 } 521 $('.header__menus__link').click(function(ev){ 522 var $me=$(this) 523 , href = $me.attr('href') 524 , tabname = $(this).data('tabname') 525 , isactive = $me.hasClass('active') 526 , $tab = $('#TabMenusHeaderContent #'+ tabname + ' .header__menus__tab-content') 527 , $menuTab = $('#TabMenusHeaderContent #menu .header__menus__tab-content') 528 , w = $(window).width(); 529 530 // lasciare navigare i collegamenti reali /webcam; gestire solo i tab basati su hash. 531 if (!tabname || !href || href.charAt(0) !== '#') { 532 return; 533 } 534 if (isactive) { 535 if (w>=wlim||tabname=='menu') { 536 closeall(); 537 $tab.css( 'z-index', '1000' ); 538 } else { 539 $me.removeClass('active'); 540 $('.header__menus__tab-content:not(#menu .header__menus__tab-content)').removeClass('active'); 541 $tab.css( 'z-index', '1000' ); 542 if ($menuTab.is(':not(.active)')) { 543 $tab.removeClass('active'); 544 $tab.css( 'z-index', '1000' ); 545 } 546 } 547 if (w<wlim && tabname=='menu') $('#TabMenusHeaderContent .header_menus--mobile-menu-item').hide(); 548 } 549 else { 550 if (tabname=='menu'||w>=wlim||tabname=='search'){ 551 $('.header__menus__link').removeClass('active'); 552 $('#TabMenusHeaderContent .header__menus__tab-content').removeClass('active'); 553 $('#TabMenusHeaderContent .header_menus--mobile-menu-item').hide() 554 } else { 555 $('.header__menus__link[data-tabname!="menu"]').removeClass('active'); 556 } 557 $me.addClass('active'); 558 $tab.addClass('active'); 559 if (tabname!='menu'){ 560 $tab.css( 'z-index', '2500' ); 561 $('.header__menus__tab-content:not(#'+ tabname +' .header__menus__tab-content)').css( 'z-index', '1000' ); 562 $("#menu .header__menus__tab-content .main-nav__list").parent().find('.active').removeClass('active'); 563 $("#menu .header__menus__tab-content .main-nav__list").parent().find('.main-nav__submenu-sub--active').removeClass('main-nav__submenu-sub--active'); 564 if (w<=wlim||tabname=='shop'){ 565 $ShopMenuHeight = $('#' + tabname).find('.main-nav__item').height(); 566 $tab.find('.main-nav__list').css("height", $ShopMenuHeight + 200); 567 } 568 else if (w>wlim||tabname=='shop'){ 569 $tab.find('.main-nav__list').css("height", "initial"); 570 } 571 } 572 573 $("body").addClass("menu-opened"); 574 if (w<wlim && tabname=='menu') $('#TabMenusHeaderContent .header_menus--mobile-menu-item').show(); 575 } 576 ev.preventDefault(); 577 }); 578 myresize(); 579 $(window).resize(myresize); 580}); 581 582})(jQuery);
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.