|
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