PageSourceSearch

https://hardskin.it/wp-content/themes/ocean/assets/js/custom.js?&ver=1757001556

js hardskin.it collected 2026-10-07 23:20:13 UTC 10,190 bytes, 339 lines download raw bytes

1// WOWJS
2jQuery(document).ready(function () {
3  wow = new WOW({
4    boxClass: "wow",
5    animateClass: "animated",
6    offset: 0,
7    mobile: false,
8    live: true,
9  });
10  wow.init();
11});
12
13// Head > Affix
14jQuery(document).ready(function () {
15  var mql = window.matchMedia("screen and (min-width:1200px)");
16  mediaqueryresponse(mql);
17  mql.addEventListener(`change`, mediaqueryresponse);
18  function mediaqueryresponse(mql) {
19    if (mql.matches) {
20      jQuery(window)
21        .on("scroll", { passive: true }, function () {
22          if (jQuery(this).scrollTop() > 100) {
23            jQuery(".navbar.navbar-default").addClass("is--affix");
24          } else {
25            jQuery(".navbar.navbar-default").removeClass("is--affix");
26          }
27        })
28        .on("load", { passive: true }, function () {
29          jQuery(this).scroll();
30        });
31    }
32  }
33});
34
35// Menu a Impulso
36jQuery(document).ready(function () {
37  var mql = window.matchMedia("screen and (min-width:1200px)");
38  mediaqueryresponse(mql);
39  mql.addEventListener(`change`, mediaqueryresponse);
40  function mediaqueryresponse(mql) {
41    if (mql.matches) {
42      var lastScrollTop = 0;
43      jQuery(window).scroll(function () {
44        var st = jQuery(this).scrollTop();
45        setTimeout(function () {
46          if (st > lastScrollTop && st > 200) {
47            jQuery("nav.navbar").addClass("impulso-hidden").removeClass("impulso-show");
48          } else {
49            jQuery("nav.navbar").removeClass("impulso-hidden").addClass("impulso-show");
50          }
51          lastScrollTop = st;
52        }, 100);
53      });
54    }
55  }
56});
57
58
59// Carousel Nav
60function setNavIcons(ref, info) {
61
62  if (info.index == 0 && (info.index + (info.slideBy * info.items)) < info.slideCount) {
63    jQuery(ref).find('.prev').addClass('first');
64    jQuery(ref).find('.next').removeClass('last');
65  } else if (info.index == 0 && (info.index + (info.slideBy * info.items)) >= info.slideCount) {
66    jQuery(ref).find('.prev').removeClass('first');
67    jQuery(ref).find('.next').removeClass('last');
68  } else if (info.index > 0 && (info.index + (info.slideBy * info.items)) < info.slideCount) {
69    jQuery(ref).find('.prev').removeClass('first');
70    jQuery(ref).find('.next').removeClass('last');
71  } else {
72    jQuery(ref).find('.prev').removeClass('first');
73    jQuery(ref).find('.next').addClass('last');
74  }
75
76}
77
78// Goto Top
79jQuery(document).ready(function () {
80  jQuery(window).scroll(function () {
81    if (jQuery(this).scrollTop() > 200) {
82      jQuery(".go-top").fadeIn(200);
83    } else {
84      jQuery(".go-top").fadeOut(200);
85    }
86  });
87  jQuery(".go-top").click(function (event) {
88    event.preventDefault();
89    jQuery("html, body").animate(
90      {
91        scrollTop: 0,
92      },
93      300
94    );
95  });
96});
97
98//Load more
99jQuery(document).ready(function () {
100  initLoadMore();
101});
102function initLoadMore() {
103  jQuery(".has-loadmore #newsContainer > div").slice(0, 6).show();
104  jQuery(".has-loadmore #newsContainer > div")
105    .slice(6, jQuery(".has-loadmore #newsContainer > div").length)
106    .hide();
107
108  if (jQuery(".has-loadmore #newsContainer > div:hidden").length != 0) {
109    jQuery("#js-loadmore").show();
110  }
111
112  jQuery("#js-loadmore").on("click", function (e) {
113    e.preventDefault();
114    jQuery(".has-loadmore #newsContainer > div:hidden").slice(0, 6).fadeIn();
115    if (jQuery(".has-loadmore #newsContainer > div:hidden").length == 0) {
116      jQuery("#js-loadmore").fadeOut("slow");
117    }
118  });
119}
120
121// Sidebar Collapse
122jQuery(document).ready(function () {
123  var mql = window.matchMedia("screen and (max-width: 991px)");
124  mediaqueryresponse(mql);
125  mql.addEventListener(`change`, mediaqueryresponse);
126  function mediaqueryresponse(mql) {
127    if (mql.matches) {
128      jQuery("#js-sidebar .taber").attr("data-toggle", "collapse");
129      jQuery("#js-sidebar .collapse").collapse("hide");
130      jQuery("nav.navbar").removeClass("navbar-fixed-top");
131    } else {
132      jQuery("#js-sidebar .collapse").collapse("show");
133      jQuery("#js-sidebar [data-toggle='collapse']").removeAttr("data-toggle");
134
135      jQuery("nav.navbar").addClass("navbar-fixed-top");
136    }
137  }
138});
139
140// Sidebar Collapse
141jQuery(document).ready(function () {
142  var mql = window.matchMedia("screen and (max-width: 767px)");
143  mediaqueryresponse(mql);
144  mql.addEventListener(`change`, mediaqueryresponse);
145  function mediaqueryresponse(mql) {
146    if (mql.matches) {
147      jQuery(".section-footer .taber").attr("data-toggle", "collapse");
148      jQuery(".section-footer .collapse").collapse("hide");
149      jQuery("nav.navbar").removeClass("navbar-fixed-top");
150    } else {
151      jQuery(".section-footer .collapse").collapse("show");
152      jQuery(".section-footer [data-toggle='collapse']").removeAttr("data-toggle");
153    }
154  }
155});
156
157// Double Click Submenu
158(function ($) {
159  jQuery(document).ready(function () {
160    jQuery("ul.dropdown-menu [data-toggle=dropdown]").on("click", function (event) {
161      event.preventDefault();
162      event.stopPropagation();
163      jQuery(this).parent().siblings().removeClass("open");
164      jQuery(this).parent().toggleClass("open");
165    });
166  });
167})(jQuery);
168
169// Counter
170jQuery(".counter").each(function () {
171  var $thisCounterValue = jQuery(this);
172  var counterFinalValue = $thisCounterValue.text();
173
174  jQuery({ Counter: 0 }).animate(
175    { Counter: $thisCounterValue.text() },
176    {
177      duration: 1500,
178      easing: "swing",
179      step: function () {
180        var num = Math.ceil(this.Counter).toString();
181        if (Number(num) > 999) {
182          while (/(\d+)(\d{3})/.test(num)) {
183            num = num.replace(/(\d+)(\d{3})/, "$1" + "." + "$2");
184          }
185        }
186        $thisCounterValue.text(num);
187      },
188      complete: function () {
189        var num = Math.ceil(counterFinalValue).toString();
190        if (Number(num) > 999) {
191          while (/(\d+)(\d{3})/.test(num)) {
192            num = num.replace(/(\d+)(\d{3})/, "$1" + "." + "$2");
193          }
194        }
195        $thisCounterValue.text(num);
196      },
197    }
198  );
199});
200
201// Datepicker
202jQuery(document).ready(function () {
203  var today = new Date();
204  jQuery(".js-datePicker").datetimepicker({
205    format: "L",
206    locale: "it",
207    // minDate: new Date(today.getFullYear(), today.getMonth(), today.getDate()),
208    icons: {
209      time: "fa fa-clock-o",
210      date: "fa fa-calendar",
211      up: "fa fa-angle-up",
212      down: "fa fa-angle-down",
213      previous: "fa fa-angle-left",
214      next: "fa fa-angle-right",
215      clear: "fa fa-trash-alt",
216    },
217  });
218  jQuery(".js-timePicker").datetimepicker({
219    format: "LT",
220    locale: "it",
221    useCurrent: false,
222    //minDate: new Date(),
223    icons: {
224      time: "fa fa-clock-o",
225      date: "fa fa-calendar",
226      up: "fa fa-angle-up",
227      down: "fa fa-angle-down",
228      previous: "fa fa-angle-left",
229      next: "fa fa-angle-right",
230      clear: "fa fa-trash-alt",
231    },
232  });
233});
234
235jQuery.fn.isOnScreen = function (offset) {
236
237  var win = jQuery(window);
238
239  var viewport = {
240    top: win.scrollTop(),
241    left: win.scrollLeft()
242  };
243  viewport.right = viewport.left + win.width();
244  viewport.bottom = viewport.top + win.height();
245
246  var bounds = this.offset();
247  bounds.right = bounds.left + this.outerWidth();
248  bounds.bottom = bounds.top + this.outerHeight();
249
250  if (offset) {
251    return ((viewport.top > (bounds.top - offset)) || (viewport.bottom > bounds.bottom));
252  } else {
253    return (!(viewport.right < bounds.left || viewport.left > bounds.right || viewport.bottom < bounds.top || viewport.top > bounds.bottom));
254  }
255
256};
257
258function InitCounterSection(reference) {
259
260  jQuery(reference).each(function () {
261    var $thisCounterValue = jQuery(this);
262    var counterFinalValue = $thisCounterValue.data('number');
263
264    jQuery({ Counter: 0 }).animate(
265      { Counter: $thisCounterValue.data('number') },
266      {
267        duration: 1500,
268        easing: "swing",
269        step: function () {
270          var num = Math.ceil(this.Counter).toString();
271          if (Number(num) > 999) {
272            while (/(\d+)(\d{3})/.test(num)) {
273              num = num.replace(/(\d+)(\d{3})/, "$1" + "." + "$2");
274            }
275          }
276          $thisCounterValue.text(num);
277        },
278        complete: function () {
279          var num = Math.ceil(counterFinalValue).toString();
280          if (Number(num) > 999) {
281            while (/(\d+)(\d{3})/.test(num)) {
282              num = num.replace(/(\d+)(\d{3})/, "$1" + "." + "$2");
283            }
284          }
285          $thisCounterValue.text(num);
286        },
287      }
288    );
289  });
290
291}
292
293function handle_icons_wishlist() {
294  let addWishes = document.querySelectorAll('.add_to_wishlist');
295  addWishes.forEach((addWish) => {
296    const addWishbox = addWish.innerHTML.split('</i>');
297    if (addWishbox[1] != "") {
298      addWish.childNodes[1].classList.remove('fa', 'fa-heart', 'fa-heart-o');
299      addWish.childNodes[1].classList.add('btn', 'btn-icon', 'icon-heart');
300      addWish.classList.remove('button', 'alt');
301      addWish.innerHTML = addWish.childNodes[1].outerHTML;
302    }
303
304  });
305
306  let delWishes = document.querySelectorAll('.delete_item');
307  delWishes.forEach((delWish) => {
308    const delWishbox = delWish.innerHTML.split('</i>');
309    if (delWishbox[1] != "") {
310      delWish.childNodes[1].classList.remove('fa', 'fa-heart', 'fa-heart');
311      delWish.childNodes[1].classList.add('btn', 'btn-icon', 'icon-heart', 'active');
312      delWish.classList.remove('button', 'alt');
313      delWish.innerHTML = delWish.childNodes[1].outerHTML;
314    }
315
316  });
317
318}
319
320// Modal trigger for "Abbigliamento sportivo personalizzato"
321jQuery('a[href="#hardskincustom"]').on('click', function(event) {
322    event.preventDefault();
323	jQuery('#custom_sportswear_modal').modal('toggle');
324});
325
326// Hide/Show Filters column
327jQuery(document).ready(function() {
328  jQuery(document).on('click','.js-toggleFilterCol',function(e) {
329    e.preventDefault();
330    e.stopPropagation();
331    if ( jQuery('#js-colFilters').length > 0 ) {
332      jQuery('#js-colFilters').toggleClass('col-0');
333    }
334    if ( jQuery('#js-colProducts').length > 0 ) {
335      jQuery('#js-colProducts').toggleClass('col-md-9').toggleClass('col-md-12');
336    }
337    jQuery(this).find('.fa').toggleClass('fa-close').toggleClass('fa-angle-right');
338  });
339});

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.