PageSourceSearch

https://www.lovebrico.com/modules/ets_multilayerslider/views/js/mls_slider.pack.js

js lovebrico.com collected 2026-10-04 09:48:37 UTC 13,015 bytes, 281 lines download raw bytes

1/**
2 * Copyright ETS Software Technology Co., Ltd
3 *
4 * NOTICE OF LICENSE
5 *
6 * This file is not open source! Each license that you purchased is only available for 1 website only.
7 * If you want to use this file on more websites (or projects), you need to purchase additional licenses.
8 * You are not allowed to redistribute, resell, lease, license, sub-license or offer our resources to any third party.
9 *
10 * DISCLAIMER
11 *
12 * Do not edit or add to this file if you wish to upgrade PrestaShop to newer
13 * versions in the future.
14 *
15 * @author ETS Software Technology Co., Ltd
16 * @copyright  ETS Software Technology Co., Ltd
17 * @license    Valid for 1 website (or project) for each purchase of license
18 */
19(function($) {
20    var MLS_Slider = function(element, options){
21        var settings = $.extend({}, $.fn.mls_slider.defaults, options);
22        var slider = $(element);        
23        var currentSlide = slider.find('li.mls_slide_front.active').eq(0);        
24        var playSlide = function(ik)
25        {
26            if($('li.mls_slide_front.item_'+ik).length > 0 && !$('li.mls_slide_front.item_'+ik).hasClass('active'))
27            {                
28                if($('li.mls_slide_front.active').length > 0)
29                {
30                    moveOut($('li.mls_slide_front.active'),function(){
31                        moveIn($('li.mls_slide_front.item_'+ik),function(){});
32                    });
33                }
34                else
35                {
36                    moveIn($('li.mls_slide_front.item_'+ik),function(){});
37                }
38                slider.addClass('mls_running');
39            }
40        } 
41        var moveIn = function(slide,moveInCallBack)
42        {            
43            slider.addClass('mls_moving_in');
44            $('.mls_pag_button').removeClass('active');
45            $('.mls_pag_button[data-slide-order="'+slide.attr('data-slide-order')+'"]').addClass('active');   
46            slide.css('animation-duration',settings.moveIn+'ms');
47            slide.css('transition-duration',settings.moveIn+'ms');
48            slide.removeClass(slide.attr('data-animation-out')).addClass(slide.attr('data-animation-in')).addClass('active').delay(settings.moveIn).queue(function(){ 
49                if(slide.find('.msl_layer_front').length > 0)
50                {
51                    slide.find('.msl_layer_front').each(function(){
52                        $(this).delay($(this).attr('data-delay-in')).queue(function(){
53                            $(this).css('animation-duration',$(this).attr('data-move-in')+'ms');
54                            $(this).removeClass($(this).attr('data-animation-out')).addClass($(this).attr('data-animation-in')).addClass('active').dequeue();  
55                        })                    
56                    });
57                }
58                $(this).dequeue();
59            }).delay(slide.attr('data-max-layer-in')).queue(function(){
60                moveInCallBack.call(this);
61                slider.removeClass('mls_running');
62                slider.removeClass('mls_moving_in'); 
63                $(this).dequeue();
64            });
65            if(settings.enableRunningBar && $('.mls_slider_running').length > 0)
66            { 
67                $('.mls_slider_running').eq(0).css('animation-duration',(parseInt(settings.moveIn) + parseInt(slide.attr('data-max-layer-in')))+'ms')
68            }
69            return slide;   
70        }
71        var moveOut = function (slide,moveOutCallback)
72        {
73            slide.find('.msl_layer_front').each(function(){ 
74                $(this).delay($(this).attr('data-delay-out')).queue(function(){
75                    $(this).css('animation-duration',$(this).attr('data-move-out')+'ms');  
76                    $(this).removeClass($(this).attr('data-animation-in')).addClass($(this).attr('data-animation-out')).delay($(this).attr('data-move-out')-100).queue(function(){
77                        $(this).removeClass('active').dequeue();
78                    }).dequeue();
79                });
80            });
81            slide.delay(slide.attr('data-max-layer-out')).queue(function(){                
82                moveOutCallback.call(this);  
83                slide.css('animation-duration',settings.moveOut+'ms');
84                slide.css('transition-duration',settings.moveOut+'ms');
85                $(this).removeClass($(this).attr('data-animation-in')).addClass($(this).attr('data-animation-out')).delay(settings.moveOut).queue(function(){
86                    $(this).removeClass('active').dequeue();                                      
87                }).dequeue();
88            });
89        }
90        
91        var play = function()
92        {            
93            clearInterval($.fn.mls_slider.itervalTimer);
94            $.fn.mls_slider.itervalTimer = 0;
95            if(!settings.enablePagination && $('.mls_pagination').length > 0)
96                $('.mls_pagination').remove();
97            if(!settings.enableNav && $('.mls_nav').length > 0)
98                $('.mls_nav').remove();
99            if(!settings.enableRunningBar && $('.mls_slider_running').length > 0)
100                $('.mls_slider_running').remove();                            
101            if($('.mls_slide_front.item_'+settings.startSlide).length > 0)
102            {
103                playSlide(settings.startSlide);
104                if(settings.autoPlay)
105                    autoPlay();
106            }
107            else if($('.mls_slide_front').length > 0)
108            {
109                playSlide(1);
110                if(settings.autoPlay)
111                    autoPlay();
112            }                
113            $('.mls_pag_button').click(function(){ 
114                if(!$(this).hasClass('active') && !slider.hasClass('mls_running'))
115                {
116                    playSlide($(this).attr('data-slide-order'));
117                    if(settings.autoPlay)
118                    {
119                        clearInterval($.fn.mls_slider.itervalTimer);
120                        autoPlay();
121                    }                    
122                }                    
123            });
124            $('.mls_next').click(function(){
125                if(!slider.hasClass('mls_running'))
126                {
127                    if($('.mls_slide_front.active').length > 0 && $('.mls_slide_front.active').next('li.mls_slide_front').length > 0)
128                    {
129                        playSlide($('.mls_slide_front.active').next('li.mls_slide_front').attr('data-slide-order'));
130                        if(settings.autoPlay)
131                        {                            
132                            clearInterval($.fn.mls_slider.itervalTimer);
133                            autoPlay();
134                        }
135                    }
136                    else if($('.mls_slide_front').length > 1 && settings.loop)
137                    {
138                        playSlide(1);
139                        if(settings.autoPlay)
140                        {
141                            clearInterval($.fn.mls_slider.itervalTimer);
142                            autoPlay();
143                        }
144                    }                            
145                }
146            });
147            $('.mls_prev').click(function(){
148                if(!slider.hasClass('mls_running'))
149                {
150                    if($('.mls_slide_front.active').length > 0 && $('.mls_slide_front.active').prev('li.mls_slide_front').length > 0)
151                    {
152                        playSlide($('.mls_slide_front.active').prev('li.mls_slide_front').attr('data-slide-order'));
153                        if(settings.autoPlay)
154                        {
155                            clearInterval($.fn.mls_slider.itervalTimer);
156                            autoPlay();
157                        }
158                    }
159                    else if($('.mls_slide_front').length > 1 && settings.loop)
160                    {
161                        playSlide($('.mls_slide_front').length);
162                        if(settings.autoPlay)
163                        {
164                            clearInterval($.fn.mls_slider.itervalTimer);
165                            autoPlay();
166                        }
167                    }
168                            
169                }
170            });
171            if(settings.pauseOnHover && settings.autoPlay)
172            {
173                slider.hover(function(){                    
174                    clearInterval($.fn.mls_slider.itervalTimer);   
175                    $.fn.mls_slider.itervalTimer='';                                    
176                },function(){
177                    if($.fn.mls_slider.itervalTimer==='')
178                        autoPlay();
179                });
180            }
181            
182        }
183        var autoPlay = function()
184        { 
185            $.fn.mls_slider.itervalTimer = setInterval(function(){
186                if($('.mls_slide_front.active').length > 0 && $('.mls_slide_front.active').next('li.mls_slide_front').length > 0)
187                {
188                    playSlide($('.mls_slide_front.active').next('li.mls_slide_front').attr('data-slide-order'));
189                }
190                else if($('.mls_slide_front').length > 1 && settings.loop)
191                        playSlide(1);                
192            },parseInt(settings.stand)+parseInt(slider.attr('data-max-slide-time'))+1000);            
193        }
194        //Play slider
195        var backgroundLoaded = false;
196        var layerImagesLoaded = false;        
197        if(settings.enableLoading)
198        { 
199            !slider.hasClass('loading')
200                slider.addClass('loading');
201            if($('.mls_slides_front > li').length > 0)
202            {
203                var firstSlideBackground = $('.mls_slides_front > li:first-child').attr('data-slide-background-image');
204                if(firstSlideBackground!='')
205                {
206                    $('<img/>').attr('src', firstSlideBackground).load(function() {
207                       $(this).remove(); 
208                       $('.mls_slides_front > li:first-child').css('background-image', 'url("'+firstSlideBackground+'")');
209                       backgroundLoaded = true;
210                       if(layerImagesLoaded && slider.hasClass('loading'))
211                       {
212                            slider.removeClass('loading');
213                            play();
214                       }                
215                       return false;              
216                    });
217                }
218                else
219                    backgroundLoaded = true;            
220                if($('.mls_slides_front > li:first-child').find('img').length > 0)
221                {
222                    var images = $('.mls_slides_front > li:first-child img');
223                    var elemsCount = images.length;
224                    var loadedCount = 0;                        
225                    images.load(function (){                            
226                        loadedCount++;          
227                        if (loadedCount == elemsCount) {
228                            layerImagesLoaded = true;
229                            if(backgroundLoaded && slider.hasClass('loading'))
230                            {
231                                slider.removeClass('loading');
232                                play();
233                                return false;
234                            }                          
235                        }                            
236                    });
237                }
238                else
239                    layerImagesLoaded = true;
240                if(backgroundLoaded && layerImagesLoaded)
241                {
242                    if(slider.hasClass('loading'))
243                        slider.removeClass('loading');
244                    play();
245                }
246            }
247            setTimeout(function(){
248               if(slider.hasClass('loading'))
249               {
250                    slider.removeClass('loading');
251                    play();
252               }                        
253            },5000);            
254        }
255        else 
256        {
257            if(slider.hasClass('loading'))
258                slider.removeClass('loading');
259            play();
260        }
261    }
262    $.fn.mls_slider = function(options) {
263        var mlsslider = new MLS_Slider(this, options);        
264        return this;
265    };    
266    //Default settings
267    $.fn.mls_slider.defaults = {
268        enableNav: true,
269        enablePagination: true,
270        enableLoading: true,
271        enableRunningBar: true,        
272        moveIn: 2000,
273        moveOut: 2000,
274        stand: 5000,
275        loop: true,
276        autoPlay: true,
277        pauseOnHover: true,
278        startSlide: 1,
279    }; 
280    $.fn.mls_slider.itervalTimer = 0;    
281})(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.