|
41 | 41 | })();
|
42 | 42 | </script>
|
43 | 43 | <script>
|
44 |
| - require(['jquery', 'domReady!'], function($){ |
45 |
| - |
46 |
| - function replacePixelImage() { |
47 |
| - var $t = $(this); |
48 |
| - if (!$t.hasClass(l)) { |
49 |
| - var src = $t.data('original'); |
| 44 | + document.addEventListener("DOMContentLoaded", function() { |
| 45 | + function replacePixelImage(img) { |
| 46 | + if (!img.classList.contains('loaded')) { |
| 47 | + var src = img.getAttribute('data-original'); |
50 | 48 | if (src) {
|
51 |
| - $t.attr('src', src).addClass(l); |
| 49 | + img.setAttribute('src', src); |
| 50 | + img.classList.add('loaded') |
52 | 51 | }
|
53 |
| - var srcset = $t.data('originalset'); |
| 52 | + var srcset = img.getAttribute('data-originalset'); |
54 | 53 | if (srcset) {
|
55 |
| - $t.attr('srcset', srcset).addClass(l); |
| 54 | + img.setAttribute('srcset', srcset); |
| 55 | + img.classList.add('loaded') |
56 | 56 | }
|
57 | 57 | }
|
58 | 58 | }
|
59 | 59 |
|
60 | 60 | /* Fix for product tabs */
|
61 | 61 | var l = 'loaded';
|
62 |
| - $('.product.info.detailed .data.item.title a').click(function(){ |
63 |
| - $('.product.info.detailed img[data-original^="h"],.product.info.detailed source[data-originalset^="h"]').each(replacePixelImage); |
64 |
| - }); |
65 |
| - $('.nav-sections .navigation').on('click mouseenter', function(){ |
66 |
| - $(this).find('img[data-original^="h"],source[data-originalset^="h"]').each(replacePixelImage); |
67 |
| - }); |
| 62 | + var productInfoDetailedImg = document.querySelector('.product.info.detailed .data.item.title a'); |
| 63 | + if(productInfoDetailedImg){ |
| 64 | + productInfoDetailedImg.addEventListener('click', function () { |
| 65 | + document.querySelectorAll('.product.info.detailed img[data-original^="h"],.product.info.detailed source[data-originalset^="h"]').forEach(function(el){ |
| 66 | + replacePixelImage(el); |
| 67 | + }); |
| 68 | + }); |
| 69 | + } |
| 70 | + |
| 71 | + var navSectionsNavigation = document.querySelector('.nav-sections .navigation'); |
| 72 | + if(navSectionsNavigation) { |
| 73 | + navSectionsNavigation.addEventListener("click", handlerMouseEvent, false); |
| 74 | + navSectionsNavigation.addEventListener("mouseenter", handlerMouseEvent, false); |
| 75 | + } |
| 76 | + function handlerMouseEvent(e) { |
| 77 | + e.target.querySelectorAll('img[data-original^="h"],source[data-originalset^="h"]').forEach(function (el) { |
| 78 | + replacePixelImage(el); |
| 79 | + }); |
| 80 | + } |
| 81 | + |
68 | 82 |
|
69 | 83 | /* Fix for sliders */
|
70 | 84 | var intr = setInterval(function(){
|
71 |
| - $sliders = $('.slick-track, .swiper-wrapper, .owl-carousel'); |
72 |
| - if (!$sliders.length) clearInterval(intr); |
73 |
| - $sliders.each(function() { |
74 |
| - var $imgs = $(this).find('img,source'); |
| 85 | + var sliders = document.querySelectorAll('.slick-track, .swiper-wrapper, .owl-carousel'); |
| 86 | + if (!sliders.length) clearInterval(intr); |
| 87 | + sliders.forEach(function(el) { |
| 88 | + var imgs = el.querySelectorAll('img,source'); |
75 | 89 | var c = 0;
|
76 |
| - $imgs.each(function(){ |
77 |
| - var $img = $(this); |
78 |
| - if (($img.attr('src') && $img.attr('src').indexOf('pixel.jpg') != -1) |
79 |
| - || ($img.attr('srcset') && $img.attr('srcset').indexOf('pixel.jpg') != -1) |
| 90 | + imgs.forEach(function(el){ |
| 91 | + if ((el.getAttribute('src') && el.getAttribute('src').indexOf('pixel.jpg') != -1) |
| 92 | + || (el.getAttribute('srcset') && el.getAttribute('srcset').indexOf('pixel.jpg') != -1) |
80 | 93 | ) {
|
81 | 94 | c++;
|
82 | 95 | }
|
83 | 96 | });
|
84 |
| - if (c && $imgs.length != c) { |
85 |
| - $imgs.each(function(){ |
86 |
| - var $img = $(this); |
87 |
| - var src = $img.data('original'); |
| 97 | + if (c && imgs.length != c) { |
| 98 | + imgs.forEach(function(el){ |
| 99 | + var src = el.getAttribute('data-original'); |
88 | 100 | if (src) {
|
89 |
| - $img.attr('src', src); |
| 101 | + el.setAttribute('src', src); |
90 | 102 | }
|
91 | 103 |
|
92 |
| - var srcset = $img.data('originalset'); |
| 104 | + var srcset = el.getAttribute('data-originalset'); |
93 | 105 | if (srcset) {
|
94 |
| - $img.attr('srcset', srcset).addClass(l); |
| 106 | + el.setAttribute('srcset', srcset); |
| 107 | + el.classList.add(l) |
95 | 108 | }
|
96 | 109 | });
|
97 | 110 | }
|
98 | 111 |
|
99 | 112 | /* Fix for page builder bg in the slider */
|
100 |
| - var $mflazyBI = $(this).find('div.mflazy-background-image'); |
101 |
| - var $BI = $(this).find('div.background-image'); |
| 113 | + var mflazyBI = el.querySelectorAll('div.mflazy-background-image'); |
| 114 | + var BI = el.querySelectorAll('div.background-image'); |
102 | 115 |
|
103 |
| - if ($mflazyBI.length && $BI.length) { |
104 |
| - $mflazyBI.each(function(){ |
105 |
| - var a = this; |
106 |
| - a.className = a.className.replace(/mflazy-background-image/g, 'background-image'); |
| 116 | + if (mflazyBI.length && BI.length) { |
| 117 | + mflazyBI.forEach(function(el) { |
| 118 | + el.className = el.className.replace(/mflazy-background-image/g, 'background-image'); |
107 | 119 | });
|
108 | 120 | }
|
109 | 121 |
|
|
0 commit comments