PageSourceSearch

https://canalmotor.me/js/custom.js?v=v5.0

js canalmotor.me collected 2026-10-02 15:58:39 UTC 13,616 bytes, 557 lines download raw bytes

1(function($) {
2  "use strict";
3	/*=================== Scroll To Next Section ===================*/
4	$(".scroll-next-sec").on('click', function() {
5	  	var cls = $(this).closest("section").next().offset().top;
6	  	$("html, body").animate({scrollTop: cls}, 1000, 'swing');
7	});
8
9	/*=================== Lightbox ===================*/
10	$('a[data-rel^=lightbox-popup]').lightcase({
11		swipe: true
12	});
13
14	/*=================== counterUp ===================*/
15	$('.counter-count').counterUp({
16		delay: 10,
17	    time: 1300
18	});
19
20	/*=================== Form Validation ===================*/
21	if($('.contact-form[name="contactform"]').length > 0){
22		var frmvalidator  = new Validator("contactform");
23		frmvalidator.addValidation("name","req","Please provide your name"); 
24		frmvalidator.addValidation("email","req","Please provide your email"); 
25		frmvalidator.addValidation("email","email","Please enter a valid email address"); 
26	}
27
28	/*=================== Parallax ===================*/
29	$('.jarallax').jarallax({
30	    speed: 0.1,
31	    disableParallax: /iPad|iPhone|iPod|Android/,
32    	disableVideo: /iPad|iPhone|iPod|Android/
33	});
34
35	/*=================== Animated wave ===================*/
36	$('#animated-wave-one').wavify({
37	  	height: 20,
38		bones: 4,
39	  	amplitude: 70,
40	  	color: "rgba(255, 255, 255, 0.06)",
41	  	speed: .15
42	});
43
44	$('#animated-wave-two').wavify({
45	  	height: 30,
46	  	bones: 4,
47	  	amplitude: 100,
48	  	color: 'rgba(255, 255, 255, 0.06)',
49	  	speed: .2
50	});
51
52	$('#animated-wave-three').wavify({
53	  	height: 40,
54		bones: 5,
55	  	amplitude: 70,
56	  	color: "rgba(188, 214, 234, 0.14)",
57	  	speed: .2
58	});
59
60	$('#animated-wave-four').wavify({
61	  	height: 60,
62	  	bones: 4,
63	  	amplitude: 90,
64	  	color: 'rgba(188, 214, 234, 0.14)',
65	  	speed: .25
66	});
67
68	/*=================== On scroll animation ===================*/
69	if($(window).width() > 767){
70		new WOW().init({
71			mobile: false,
72			easing: "in-quintic",
73		});
74	}
75
76	/*=================== Scroll Top ===================*/
77	$(window).on('scroll', function() {
78	    if ($(this).scrollTop() > 900) {
79	     	$('.scroll-top').fadeIn(600);
80	       	} else {
81	      		$('.scroll-top').fadeOut(600);
82	      	}
83	    }); 
84	    $('.scroll-top').on("click", function() {
85	      	$("html,body").animate({ scrollTop: 0 }, 1500);
86	      	return false;
87	});
88	    
89	/*=================== Search Form ===================*/
90    $(".nav-search").on('click', function(e){
91        $('.main-search-area').addClass('open');
92        e.stopPropagation();
93        e.preventDefault();
94    });
95
96    $(".icon_close").on('click', function(e){
97        $('.main-search-area').removeClass('open');
98        e.stopPropagation();
99        e.preventDefault();
100    });
101
102	/*=================== One Page Scrolling ===================*/
103    $(document).on('click', '.navbar-nav a.nav-link-scroll', function(event) {
104        var $anchor = $(this);
105        $('html, body').stop().animate({
106            scrollTop: $($anchor.attr('href')).offset().top
107        }, 1500, 'easeInOutExpo');
108        event.preventDefault();
109        $('.navbar-collapse').collapse('hide');
110    });
111
112    /*=================== Dropwon Menu ===================*/
113	$("#mobile-menu a.dropdown-toggle").off('click');
114      $("#mobile-menu a.dropdown-toggle").on('click', function (e) {
115        event.preventDefault(); 
116        event.stopPropagation(); 
117        $(this).closest("li.dropdown").find(".dropdown-menu").first().stop().slideToggle().toggleClass("show");
118        $(this).closest("li.dropdown").first().toggleClass("show");                        
119        return false;
120    });
121
122
123	/*=================== Sticky Menu ===================*/
124    if($('header.header').length > 0){
125      var myNavBar = {
126
127          flagAdd: true,
128
129          elements: [],
130
131          init: function(elements) {
132              this.elements = elements;
133          },
134
135          add: function() {
136              if (this.flagAdd) {
137                  for (var i = 0; i < this.elements.length; i++) {
138                      document.getElementById(this.elements[i]).className += " sticky-nav";
139                  }
140                  this.flagAdd = false;
141              }
142          },
143
144          remove: function() {
145              for (var i = 0; i < this.elements.length; i++) {
146                  document.getElementById(this.elements[i]).className =
147                      document.getElementById(this.elements[i]).className.replace(/(?:^|\s)sticky-nav(?!\S)/g, '');
148              }
149              this.flagAdd = true;
150          }
151
152      };
153      /**
154       * Init the object. Pass the object the array of elements
155       * that we want to change when the scroll goes down
156       */
157      myNavBar.init([
158          "main-nav"
159      ]);
160
161      /**
162       * Function that manage the direction
163       * of the scroll
164       */
165      function offSetManager() {
166
167          var yOffset = 0;
168          var currYOffSet = window.pageYOffset;
169
170          if (yOffset < currYOffSet) {
171              myNavBar.add();
172          } else if (currYOffSet == yOffset) {
173              myNavBar.remove();
174          }
175      }
176      /**
177       * bind to the document scroll detection
178       */
179      window.onscroll = function(e) {
180          offSetManager();
181      }
182
183      /**
184       * We have to do a first detectation of offset because the page
185       * could be load with scroll down set.
186       */
187      offSetManager();
188    }
189
190	/*=================== Home 2 slider ===================*/
191	function home2Slider(){
192		var mySwiper = new Swiper ('.iconic-main-slider', {
193			slidesPerView: 1,
194			loop: true,
195			spaceBetween: 30,
196			speed: 1500,
197			autoplay: {
198			    delay: 4000,
199			},
200			pagination: {
201			    el: '.iconic-main-slider .swiper-pagination',
202			    clickable: true
203			}
204		})
205	}
206
207	/*=================== App ScreenShot slider ===================*/
208	function screenshotSlider(){
209		var mySwiper = new Swiper ('.app-screenshot-slider', {
210			slidesPerView: 4,
211			spaceBetween: 30,
212			speed: 700,
213			autoplay: {
214			    delay: 2500,
215			},
216			pagination: {
217			    el: '.app-screenshot-slider .swiper-pagination',
218			    clickable: true
219			},
220			breakpoints: {
221			    570: {
222			      slidesPerView: 1
223			    },
224			    767: {
225			      slidesPerView: 2
226			    },
227			    992: {
228			      	slidesPerView: 3
229			    }
230			}
231		})
232	}
233
234	function screenshotSlider2(){
235		var mySwiper = new Swiper ('.app-screenshot-slider-2', {		
236			slidesPerView: 3.2,
237			centeredSlides: true,
238			loop: true,
239        	effect: 'coverflow',
240        	spaceBetween: 0,
241			speed: 700,
242			grabCursor: true,
243			autoplay: {
244			    delay: 2500,
245			},
246			pagination: {
247			    el: '.app-screenshot-slider-2 .swiper-pagination',
248			    clickable: true
249			},
250			coverflowEffect: {
251	            rotate: 0,
252	            stretch: 71,
253	            depth: 160,
254	            modifier: 1,
255	            slideShadows : false
256	        },
257	        breakpoints: {
258	        	1199: {
259    				coverflowEffect: {
260    		            stretch: 57
261    		        }
262	        	},
263	        	992: {
264    				coverflowEffect: {
265    		            stretch: 50
266    		        }
267	        	},
268	        	768: {
269    				coverflowEffect: {
270    		            stretch: 36
271    		        }
272	        	},
273	        	575: {
274	        		slidesPerView: 2.5,
275    				coverflowEffect: {
276    		            stretch: 18
277    		        }
278	        	},
279	        	370: {
280	        		slidesPerView: 2.5,
281    				coverflowEffect: {
282    		            stretch: 10
283    		        }
284	        	}
285	        }
286		})
287	}
288
289	function screenshotSlider3(){
290		var mySwiper = new Swiper ('.app-screenshot-slider-3', {		
291			slidesPerView: 5,
292			centeredSlides: true,
293			loop: true,
294        	spaceBetween: 38,
295			speed: 700,
296			autoplay: {
297			    delay: 2500,
298			},
299			pagination: {
300			    el: '.app-screenshot-slider-3 .swiper-pagination',
301			    clickable: true
302			},
303	        breakpoints: {
304	        	1199: {
305	        		slidesPerView: 4
306	        	},
307	        	992: {
308	        		slidesPerView: 3
309	        	},
310	        	768: {
311	        		slidesPerView: 3
312	        	},
313	        	575: {
314	        		slidesPerView: 2,
315	        		centeredSlides: false,
316	        		spaceBetween: 20
317	        	}
318	        }
319		})
320	}
321
322
323	/*=================== Testimonial slider ===================*/
324	function testimonialSlider(){
325		var mySwiper = new Swiper ('.testimonial-slider', {
326			loop: true,
327			slidesPerView: 3,
328			spaceBetween: 30,
329			speed: 700,
330			autoplay: {
331			    delay: 4000,
332			},
333			pagination: {
334			    el: '.testimonial-slider .swiper-pagination',
335			    clickable: true
336			},
337			navigation: {
338		        nextEl: '.testimonial-btn-next',
339		        prevEl: '.testimonial-btn-prev',
340		    },
341			breakpoints: {
342			    767: {
343			      slidesPerView: 1
344			    },
345			    992: {
346			      	slidesPerView: 2
347			    }
348			}
349		})
350	}
351
352	function testimonialSlider2(){
353		var mySwiper = new Swiper ('.testimonial-one-item-slider', {
354			loop: true,
355			slidesPerView: 1,
356			spaceBetween: 30,
357			speed: 700,
358			autoplay: {
359			    delay: 4000,
360			},
361			pagination: {
362			    el: '.testimonial-one-item-slider .swiper-pagination',
363			    clickable: true
364			},
365			navigation: {
366		        nextEl: '.testimonial-btn-next',
367		        prevEl: '.testimonial-btn-prev',
368		    }
369		})
370	}
371
372	function testimonialSlider3(){
373		var mySwiper = new Swiper ('.testimonial-slider-2-item', {
374			loop: true,
375			slidesPerView: 2,
376			spaceBetween: 50,
377			speed: 700,
378			autoplay: {
379			    delay: 4000,
380			},
381			pagination: {
382			    el: '.testimonial-slider-2-item .swiper-pagination',
383			    clickable: true
384			},
385			navigation: {
386		        nextEl: '.testimonial-btn-next',
387		        prevEl: '.testimonial-btn-prev',
388		    },
389			breakpoints: {
390			    767: {
391			      slidesPerView: 1
392			    }
393			}
394		})
395	}
396
397	/*=================== Partners slider ===================*/
398	function partnersSlider(){
399		var mySwiper = new Swiper ('.partners-slider', {
400			loop: true,
401			slidesPerView: 4,
402			slidesPerGroup: 4,
403			spaceBetween: 30,
404			loopFillGroupWithBlank: true,
405			speed: 900,
406			autoplay: {
407			    delay: 4000,
408			},
409			pagination: {
410			    el: '.partners-slider .swiper-pagination',
411			    clickable: true
412			},
413			breakpoints: {
414			    570: {
415			      slidesPerView: 2,
416			      slidesPerGroup: 2
417			    },
418			    767: {
419			      	slidesPerView: 3,
420					slidesPerGroup: 3
421			    },
422			    992: {
423			      	slidesPerView: 3,
424					slidesPerGroup: 3
425			    }
426			}
427		})
428	}
429
430	/*=================== Partners slider ===================*/
431	function particles(){
432		if($('#particles').length > 0){
433			particlesJS("particles", {
434			  "particles": {
435			    "number": {
436			      "value": 100,
437			      "density": {
438			        "enable": true,
439			        "value_area": 1443.0708547789707
440			      }
441			    },
442			    "color": {
443			      "value": "#ffffff"
444			    },
445			    "shape": {
446			      "type": "circle",
447			      "stroke": {
448			        "width": 0,
449			        "color": "#000000"
450			      },
451			      "polygon": {
452			        "nb_sides": 5
453			      },
454			      "image": {
455			        "src": "img/github.svg",
456			        "width": 100,
457			        "height": 100
458			      }
459			    },
460			    "opacity": {
461			      "value": 0,
462			      "random": true,
463			      "anim": {
464			        "enable": false,
465			        "speed": 1,
466			        "opacity_min": 0.1,
467			        "sync": false
468			      }
469			    },
470			    "size": {
471			      "value": 3,
472			      "random": true,
473			      "anim": {
474			        "enable": false,
475			        "speed": 40,
476			        "size_min": 0.1,
477			        "sync": false
478			      }
479			    },
480			    "line_linked": {
481			      "enable": true,
482			      "distance": 212,
483			      "color": "#ffffff",
484			      "opacity": 0.30464829156444934,
485			      "width": 2
486			    },
487			    "move": {
488			      "enable": true,
489			      "speed": 8.017060304327615,
490			      "direction": "none",
491			      "random": false,
492			      "straight": false,
493			      "out_mode": "out",
494			      "bounce": false,
495			      "attract": {
496			        "enable": false,
497			        "rotateX": 641.3648243462092,
498			        "rotateY": 1200
499			      }
500			    }
501			  },
502			  "interactivity": {
503			    "detect_on": "canvas",
504			    "events": {
505			      "onhover": {
506			        "enable": true,
507			        "mode": "grab"
508			      },
509			      "onclick": {
510			        "enable": true,
511			        "mode": "repulse"
512			      },
513			      "resize": true
514			    },
515			    "modes": {
516			      "grab": {
517			        "distance": 400,
518			        "line_linked": {
519			          "opacity": 1
520			        }
521			      },
522			      "bubble": {
523			        "distance": 400,
524			        "size": 40,
525			        "duration": 2,
526			        "opacity": 8,
527			        "speed": 3
528			      },
529			      "repulse": {
530			        "distance": 200,
531			        "duration": 0.4
532			      },
533			      "push": {
534			        "particles_nb": 4
535			      },
536			      "remove": {
537			        "particles_nb": 2
538			      }
539			    }
540			  },
541			  "retina_detect": true
542			});
543		}
544	}
545
546    home2Slider();
547    screenshotSlider();
548    screenshotSlider2();
549    screenshotSlider3();
550    testimonialSlider();
551    testimonialSlider2();
552    testimonialSlider3();
553    partnersSlider();
554    particles();
555
556
557})($);

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.