Play stops after click next/prev button ...how to start?

3,229 views
Skip to first unread message

Peter Ozolins

unread,
May 9, 2013, 5:12:43 PM5/9/13
to slid...@googlegroups.com
Not sure if this is a bug or if I'm missing something here:

I have a slider with only next/previous buttons visible on hover over the image. When it loads up, it starts playing automatically, and the pause on hover works and restarts when I mouse out of the image.

If I click the next or previous button once and mouse out, it'll start playing again, but if I click it again, the slider will stop and i can't get it to start again...except for page reload, of course.

Here's the page I'm working with: 

Ajinkya Borade

unread,
May 17, 2013, 7:17:45 AM5/17/13
to slid...@googlegroups.com
Im also facing the same issue.

Autoplay stops working, when you click on NEXT PREV buttons.


        $('#quotes').slidesjs({
            width: 789,
            height: 60,
            auto: true,
            play:{
              active: false, auto: true, pauseOnHover: true, 
              swap: true, interval: 4000, restartDelay: 2000
            }
        });

Please help. 

Matt Carson

unread,
May 21, 2013, 3:27:50 PM5/21/13
to slid...@googlegroups.com
Hi folks, yeah this was a pig in a poke - but I've solved it.

open the file jquery.slides.js

go to line 209

replace    _this.stop(true);
with         // _this.stop(true);

basically, all this change does - is tell slidesjs not to stop the automatic slideshow when you click on the small circles at the bottom of the screen.

( ! ) I've attached this file (already fixed)
jquery.slides.js

Ajinkya Borade

unread,
May 22, 2013, 12:52:06 AM5/22/13
to slid...@googlegroups.com
thanks



--
You received this message because you are subscribed to a topic in the Google Groups "SlidesJS" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/slidesjs/USfm3tdMM78/unsubscribe?hl=en.
To unsubscribe from this group and all its topics, send an email to slidesjs+u...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 



--
-- Ajinkya Borade 

André Herrn

unread,
Sep 16, 2013, 9:21:19 AM9/16/13
to slid...@googlegroups.com
Additionally I had to uncomment _this.stop(true);:

      $(".slidesjs-next", $element).click(function(e) {
        e.preventDefault();
        //_this.stop(true);
        return _this.next(_this.options.navigation.effect);
      });
      $(".slidesjs-previous", $element).click(function(e) {
        e.preventDefault();
        //_this.stop(true);
        return _this.previous(_this.options.navigation.effect);
      });

in Lines 156 and 163 too.

Andrey Artemenko

unread,
Oct 1, 2013, 2:30:46 PM10/1/13
to slid...@googlegroups.com
Same trouble here!
Dear Nathan Searles, thanks for this great plugin! But why do we have to hack it to get some essential behavior? There must be an option to restart the slider after next/prev was clicked. Please implement it in the next version. Thanks!


пятница, 10 мая 2013 г., 0:12:43 UTC+3 пользователь Peter Ozolins написал:

Daniel Mádl

unread,
Oct 16, 2013, 6:27:13 PM10/16/13
to slid...@googlegroups.com
This is better:

$(".slidesjs-next", $element).click(function(e) {
        e.preventDefault();
        _this.stop(false);
_this.play();
        return _this.next(_this.options.navigation.effect);
      });
      $(".slidesjs-previous", $element).click(function(e) {
        e.preventDefault();
        _this.stop(false);
_this.play();
        return _this.previous(_this.options.navigation.effect);
      });

Dne úterý, 21. května 2013 21:27:50 UTC+2 Matt Carson napsal(a):

Maheshwaran R K

unread,
Oct 17, 2013, 6:42:21 AM10/17/13
to slid...@googlegroups.com
Hi Matt Carson,

Sorry I am fresher to web designing. I have downloaded the files from slidesjs.com. And I am working on "Multiple Slideshows" index page. The source code of index page was related to JS - "jquery.slides.min.js" only, not "jquer.slides.js" mentioned by you. And "_this.stop(true);is not available in "jquery.slides.min.js". Pls advise what needs to be replaced now. Kindly help me.

Rgds,
Mahesh

Matt Carson

unread,
Oct 20, 2013, 11:21:28 AM10/20/13
to slid...@googlegroups.com
Hi Mahesh,
                  Ok you need to download jquery.slides.js and you'll be able to make the change there.

:@)

[Matt]

fredrick boaz

unread,
Nov 14, 2013, 7:14:23 AM11/14/13
to slid...@googlegroups.com
Hi Matt i need some help here on the same issue , i want when the slide reaches the last item it stops and the next button to be inactive here is my code


/*
* Slides, A Slideshow Plugin for jQuery
* Intructions: http://slidesjs.com
* By: Nathan Searles, http://nathansearles.com
* Version: 1.1.9
* Updated: September 5th, 2011
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
(function($){
    $.fn.slides = function( option ) {
        // override defaults with specified option
        option = $.extend( {}, $.fn.slides.option, option );

        return this.each(function(){
            // wrap slides in control container, make sure slides are block level
            $('.' + option.container, $(this)).children().wrapAll('<div class="slides_control"/>');
            var elem = $(this),
                control = $('.slides_control',elem),
                total = control.children().size(),
                width = getWidth(),
                height = getHeight(),
                start = option.start - 1,
                effect = option.effect.indexOf(',') < 0 ? option.effect : option.effect.replace(' ', '').split(',')[0],
                paginationEffect = option.effect.indexOf(',') < 0 ? effect : option.effect.replace(' ', '').split(',')[1],
                next = 0, prev = 0, number = 0, current = 0, loaded, active, clicked, position, direction, imageParent, pauseTimeout, playInterval;
            equalHeight();
            if(option.width=="auto"){
                $(window).resize(function(){
                    var width = getWidth();
                    elem.find('.slide').css({
                    left: width,
                    width: width
                    });
                    equalHeight();
                    control.css({
                    left: -width,
                    width: (width * 3),
                    height:getHeight()
                    });
                   
                });
            }
           
            // is there only one slide?
            if (total < 2) {
                // Fade in .slides_container
                $('.' + option.container, $(this)).fadeIn(option.fadeSpeed, option.fadeEasing, function(){
                    // let the script know everything is loaded
                    loaded = true;
                    // call the loaded funciton
                    option.slidesLoaded();
                });
                // Hide the next/previous buttons
                $('.' + option.next + ', .' + option.prev,elem).fadeOut(0);
                return false;
            }
           
            // animate slides
            function animate(direction, effect, clicked) {
                if (!active && loaded) {
                    active = true;
                    // start of animation
                    option.animationStart(current + 1);
                    switch(direction) {
                        case 'next':
                            // change current slide to previous
                            prev = current;
                            // get next from current + 1
                            next = current + 1;
                            // if last slide, set next to first slide
                            next = total === next ? 0 : next;
                            // set position of next slide to right of previous
                            position = getWidth()*2;
                            // distance to slide based on width of slides
                            direction = -getWidth()*2;
                            // store new current slide
                            current = next;
                        break;
                        case 'prev':
                            // change current slide to previous
                            prev = current;
                            // get next from current - 1
                            next = current - 1;
                            // if first slide, set next to last slide
                            next = next === -1 ? total-1 : next;                               
                            // set position of next slide to left of previous
                            position = 0;                               
                            // distance to slide based on width of slides
                            direction = 0;       
                            // store new current slide
                            current = next;
                        break;
                        case 'pagination':
                            // get next from pagination item clicked, convert to number
                            next = parseInt(clicked,10);
                            // get previous from pagination item with class of current
                            prev = $('.' + option.paginationClass + ' li.'+ option.currentClass +' a', elem).attr('href').match('[^#/]+$');
                            // if next is greater then previous set position of next slide to right of previous
                            if (next > prev) {
                                position = getWidth()*2;
                                direction = -getWidth()*2;
                            } else {
                            // if next is less then previous set position of next slide to left of previous
                                position = 0;
                                direction = 0;
                            }
                            // store new current slide
                            current = next;
                        break;
                    }

                    // fade animation
                    if (effect === 'fade') {
                        // fade animation with crossfade
                        if (option.crossfade) {
                            // put hidden next above current
                            control.children(':eq('+ next +')', elem).css({
                                zIndex: 10
                            // fade in next
                            }).fadeIn(option.fadeSpeed, option.fadeEasing, function(){
                                if (option.autoHeight) {
                                    // animate container to height of next
                                    equalHeight(next);
                                    control.animate({
                                        height: control.children(':eq('+ next +')', elem).outerHeight()
                                    }, option.autoHeightSpeed, function(){
                                        // hide previous
                                        control.children(':eq('+ prev +')', elem).css({
                                            display: 'none',
                                            zIndex: 0
                                        });                               
                                        // reset z index
                                        control.children(':eq('+ next +')', elem).css({
                                            zIndex: 0
                                        });                                   
                                        // end of animation
                                        option.animationComplete(next + 1);
                                        active = false;
                                    });
                                } else {
                                    // hide previous
                                    control.children(':eq('+ prev +')', elem).css({
                                        display: 'none',
                                        zIndex: 0
                                    });                                   
                                    // reset zindex
                                    control.children(':eq('+ next +')', elem).css({
                                        zIndex: 0
                                    });                                   
                                    // end of animation
                                    option.animationComplete(next + 1);
                                    active = false;
                                }
                            });
                        } else {
                            // fade animation with no crossfade
                            control.children(':eq('+ prev +')', elem).fadeOut(option.fadeSpeed,  option.fadeEasing, function(){
                                // animate to new height
                                equalHeight(next);
                                if (option.autoHeight) {
                                    control.animate({
                                        // animate container to height of next
                                        height: control.children(':eq('+ next +')', elem).outerHeight()
                                    }, option.autoHeightSpeed,
                                    // fade in next slide
                                    function(){
                                        control.children(':eq('+ next +')', elem).fadeIn(option.fadeSpeed, option.fadeEasing);
                                    });
                                } else {
                                // if fixed height
                                    control.children(':eq('+ next +')', elem).fadeIn(option.fadeSpeed, option.fadeEasing, function(){
                                        // fix font rendering in ie, lame
                                        if($.browser.msie) {
                                            $(this).get(0).style.removeAttribute('filter');
                                        }
                                    });
                                }                                   
                                // end of animation
                                option.animationComplete(next + 1);
                                active = false;
                            });
                        }
                    // slide animation
                    } else {
                        // move next slide to right of previous
                        control.children(':eq('+ next +')').css({
                            left: position,
                            display: 'block'
                        });
                        // animate to new height
                        if (option.autoHeight) {
                            equalHeight(next);
                            control.animate({
                                left: direction,
                                height: control.children(':eq('+ next +')').outerHeight()
                            },option.slideSpeed, option.slideEasing, function(){
                                control.css({
                                    left: -getWidth()
                                });
                                control.children(':eq('+ next +')').css({
                                    left: getWidth(),
                                    zIndex: 5
                                });
                                // reset previous slide
                                control.children(':eq('+ prev +')').css({
                                    left: getWidth(),
                                    display: 'none',
                                    zIndex: 0
                                });
                                // end of animation
                                option.animationComplete(next + 1);
                                active = false;
                            });
                            // if fixed height
                            } else {
                                // animate control
                                equalHeight(next);
                                control.animate({
                                    left: direction
                                },option.slideSpeed, option.slideEasing, function(){
                                    // after animation reset control position
                                    control.css({
                                        left: -getWidth()
                                    });
                                    // reset and show next
                                    control.children(':eq('+ next +')').css({
                                        left: getWidth(),
                                        zIndex: 5
                                    });
                                    // reset previous slide
                                    control.children(':eq('+ prev +')').css({
                                        left: getWidth(),
                                        display: 'none',
                                        zIndex: 0
                                    });
                                    // end of animation
                                    option.animationComplete(next + 1);
                                    active = false;
                                });
                            }
                        }
                    // set current state for pagination
                    if (option.pagination) {
                        // remove current class from all
                        $('.'+ option.paginationClass +' li.' + option.currentClass, elem).removeClass(option.currentClass);
                        // add current class to next
                        $('.' + option.paginationClass + ' li:eq('+ next +')', elem).addClass(option.currentClass);
                    }
                   
                }
               
            } // end animate function
           
            function stop() {
                // clear interval from stored id
                clearInterval(elem.data('interval'));
            }
            function equalHeight(pointer){
                // equal height for title/description
                if(!pointer) pointer = current;
                 if(option.equalHeight){
                    //setEqualHeight(control.children(':eq('+ pointer +')'));
                    var el = control.children(':eq('+ pointer +')');
                    jQuery('.bt-title,.bt-introtext',el).height('auto');
                    var maxHeight = Math.max.apply(null, jQuery('.bt-title',el).map(function (){return jQuery(this).height();}).get());
                    if(maxHeight) jQuery('.bt-title',el).height(maxHeight);
                    maxHeight = Math.max.apply(null, jQuery('.bt-introtext',el).map(function (){return jQuery(this).height();}).get());
                    if(maxHeight) jQuery('.bt-introtext',el).height(maxHeight);
                }
            }
            function getWidth(){
                return option.width!="auto"?option.width:elem.width();
            }
            function getHeight(){
                var mheight = 0;
               
                if(option.autoHeight){
                    mheight = control.children(':eq('+ current +')').outerHeight();
                }else{
                    if(option.height=='auto'){
                        mheight= Math.max.apply(null, control.children().map(function (){return $(this).outerHeight();}).get());
                    }else{
                        mheight = option.height;
                    }
                }
                return mheight? mheight:'auto';
            }
            function pause() {
                if (option.pause) {
                    // clear timeout and interval
                    clearTimeout(elem.data('pause'));
                    clearInterval(elem.data('interval'));
                    // pause slide show for option.pause amount
                    pauseTimeout = setTimeout(function() {
                        // clear pause timeout
                        clearTimeout(elem.data('pause'));
                        // start play interval after pause
                        playInterval = setInterval(    function(){
                            animate("next", effect);
                        },option.play);
                        // store play interval
                        elem.data('interval',playInterval);
                    },option.pause);
                    // store pause interval
                    elem.data('pause',pauseTimeout);
                } else {
                    // if no pause, just stop
                    stop();
                }
            }
               
            // 2 or more slides required
            if (total < 2) {
                return;
            }
           
            // error corection for start slide
            if (start < 0) {
                start = 0;
            }
           
            if (start > total) {
                start = total - 1;
            }
                   
            // change current based on start option number
            if (option.start) {
                current = start;
            }
           
            // randomizes slide order
            if (option.randomize) {
                control.randomize();
            }
           
            // make sure overflow is hidden, width is set
            $('.' + option.container, elem).css({
                overflow: 'hidden',
                // fix for ie
                position: 'relative'
            });
           
            // set css for slides
            control.children().css({
                position: 'absolute',
                top: 0,
                left: control.children().outerWidth(),
                zIndex: 0,
                display: 'none'
             });
           
            // set css for control div
            control.css({
                position: 'relative',
                // size of control 3 x slide width
                width: (getWidth() * 3),
                // set height to slide height
                height: height,
                // center control to slide
                left: -getWidth()
            });
           
            // show slides
            $('.' + option.container, elem).css({
                display: 'block'
            });

            // if autoHeight true, get and set height of first slide
            if (option.autoHeight) {
                control.children().css({
                    height: 'auto'
                });
                control.animate({
                    height: control.children(':eq('+ start +')').outerHeight()
                },option.autoHeightSpeed);
            }
           
            // checks if image is loaded
            if (option.preload && control.find('img:eq(' + start + ')').length) {
                // adds preload image
                $('.' + option.container, elem).css({
                    background: 'url(' + option.preloadImage + ') no-repeat 50% 50%'
                });
               
                /*
                // gets image src, with cache buster
                var img = control.find('img:eq(' + start + ')').attr('src') + '?' + (new Date()).getTime();
               
                // check if the image has a parent
                if ($('img', elem).parent().attr('class') != 'slides_control') {
                    // If image has parent, get tag name
                    imageParent = control.children(':eq(0)')[0].tagName.toLowerCase();
                } else {
                    // Image doesn't have parent, use image tag name
                    imageParent = control.find('img:eq(' + start + ')');
                }
                */
                // checks if image is loaded
                var $imgs = control.find('img');
                var imgsl = $imgs.length;
                var u=0;
                $imgs.each(function(){
                    var img = new Image();
                    $(img).load(function(){
                        ++u;
                        if (u == imgsl) {
                            startSlider();
                        }
                    }).error(function () {
                        ++u;
                        if (u == imgsl) {
                            startSlider();
                        }
                    }).attr('src',this.src);
                });
            } else {
                // if no preloader fade in start slide
                control.children(':eq(' + start + ')').fadeIn(option.fadeSpeed, option.fadeEasing, function(){
                    // let the script know everything is loaded
                    loaded = true;
                    // call the loaded funciton
                    option.slidesLoaded();
                });
            }
            function startSlider(){
                // once image is fully loaded, fade in
                control.children(':eq(' + start + ')').fadeIn(option.fadeSpeed, option.fadeEasing, function(){
                    $(this).css({
                        zIndex: 5
                    });
                    // removes preload image
                    $('.' + option.container, elem).css({
                        background: ''
                    });
                    control.css({
                        height:getHeight()
                    });
                    // let the script know everything is loaded
                    loaded = true;
                    // call the loaded funciton
                    option.slidesLoaded();
                });
            }
           
            // click slide for next
            if (option.bigTarget) {
                // set cursor to pointer
                control.children().css({
                    cursor: 'pointer'
                });
                // click handler
                control.children().click(function(){
                    // animate to next on slide click
                    animate('next', effect);
                    return false;
                });                                   
            }
           
            // pause on mouseover
            if (option.hoverPause && option.play) {
                control.bind('mouseover',function(){
                    // on mouse over stop
                    stop();
                });
                control.bind('mouseleave',function(){
                    // on mouse leave start pause timeout
                    pause();
                });
            }
           
            // generate next/prev buttons
            if (option.generateNextPrev) {
                $('.' + option.container, elem).after('<a href="#" class="'+ option.prev +'">Prev</a>');
                $('.' + option.prev, elem).after('<a href="#" class="'+ option.next +'">Next</a>');
            }
           
            // next button
            $('.' + option.next ,elem).click(function(e){
                e.preventDefault();
                if (option.play) {
                    pause();
                }
                animate('next', effect);
            });
           
            // previous button
            $('.' + option.prev, elem).click(function(e){
                e.preventDefault();
                if (option.play) {
                     pause();
                }
                animate('prev', effect);
            });
           
            // generate pagination
            if (option.generatePagination) {
                // create unordered list
                if($('.' + option.next ,elem).length){
                    $('.' + option.next ,elem).before('<ul class='+ option.paginationClass +'></ul>');
                }else
                if (option.prependPagination){
                    elem.prepend('<ul class='+ option.paginationClass +'></ul>');
                }else{
                    elem.append('<ul class='+ option.paginationClass +'></ul>');
                }
                // for each slide create a list item and link
                control.children().each(function(){
                    $('.' + option.paginationClass, elem).append('<li><a href="#'+ number +'">'+ (number+1) +'</a></li>');
                    number++;
                });
            } else {
                // if pagination exists, add href w/ value of item number to links
                $('.' + option.paginationClass + ' li a', elem).each(function(){
                    $(this).attr('href', '#' + number);
                    number++;
                });
            }
           
            // add current class to start slide pagination
            $('.' + option.paginationClass + ' li:eq('+ start +')', elem).addClass(option.currentClass);
           
            // click handling
            $('.' + option.paginationClass + ' li a', elem ).click(function(){
                // pause slideshow
                if (option.play) {
                     pause();
                }
                // get clicked, pass to animate function                   
                clicked = $(this).attr('href').match('[^#/]+$');
                // if current slide equals clicked, don't do anything
                if (current != clicked) {
                    animate('pagination', paginationEffect, clicked);
                }
                return false;
            });
           
            // click handling
            $('a.link', elem).click(function(){
                // pause slideshow
                if (option.play) {
                     pause();
                }
                // get clicked, pass to animate function                   
                clicked = $(this).attr('href').match('[^#/]+$') - 1;
                // if current slide equals clicked, don't do anything
                if (current != clicked) {
                    animate('pagination', paginationEffect, clicked);
                }
                return false;
            });
       
            if (option.play) {
                // set interval
                playInterval = setInterval(function() {
                    animate('next', effect);
                }, option.play);
                // store interval id
                elem.data('interval',playInterval);
            }

            /**********************************************************************************
             * Code add touch screen plugin                                                      *
             * @author chi...@vsmarttech.com                                                  *   
             **********************************************************************************/
        if(option.touchScreen){
            slideHammer = new Hammer($('.slides_container',elem)[0],{
                                        prevent_default : true,
                                        not_prevent_tags: {
                                            id            : [],
                                            className    : [],
                                            tagName     : []
                                            }
                                        }   
                                     );
           
            // position of slides_control
            var controlPosition = control.position().left;
            var nextTemp, prevTemp;
            var windowPosition = $('html,body').offset().top;
            $(window).scroll(function(){
                windowPosition = $('html,body').offset().top;
            });
            // ondrag function
            slideHammer.ondrag = function(ev){
                if(active) return;
                if (option.play) {
                     pause();
                }
                if(ev.direction == 'right' || ev.direction == 'left'){
                    if(current == total-1){
                        nextTemp = 0;
                        prevTemp = total -2;
                    }else if(current == 0 ){
                        nextTemp = 1;
                        prevTemp = total -1;
                    }else {
                        nextTemp = current + 1;
                        prevTemp = current - 1;
                    }
                    if(total == 2){
                        if(ev.direction == 'left'){
                            control.children(':eq('+ nextTemp +')').css({
                                left: getWidth()*2,
                                display: 'block'
                            });
                        }else if(ev.direction == 'right'){
                            control.children(':eq('+ nextTemp +')').css({
                                left: 0,
                                display: 'block'
                            });
                        }
                    }else{
                        control.children(':eq('+ nextTemp +')').css({
                            left: getWidth()*2,
                            display: 'block'
                        });
                        control.children(':eq('+ prevTemp +')').css({
                            left: 0,
                            display: 'block'
                        });
                    }
                }
                if(ev.direction == 'left'){
                    control.css('left',controlPosition - ev.distance);
                }
                if(ev.direction == 'right'){
                    control.css('left', controlPosition + ev.distance);
                }
            }
            // on dragend function
            slideHammer.ondragend = function(ev){
                if(active) return;
                if(ev.distance > 100){
                    if(ev.direction == 'left'){
                        prev = current;
                        next = current + 1;
                        next = total === next ? 0 : next;
                        position = getWidth()*2;
                        direction = -getWidth()*2;
                        current = next;
                        if(total != 2)
                        control.children(':eq('+ prevTemp +')').css({
                            left: getWidth(),
                            display: 'none',
                            zIndex: 0
                        });
                    }else if(ev.direction == 'right'){
                        prev = current;
                        next = current - 1;
                        next = next === -1 ? total-1 : next;                               
                        position = 0;                               
                        direction = 0;       
                        current = next;
                        if(total != 2)
                        control.children(':eq('+ nextTemp +')').css({
                            left: getWidth(),
                            display: 'none',
                            zIndex: 0
                        });
                    }
                    //animate to new height
                    if(ev.direction == 'right' || ev.direction == 'left'){
                        active = true;
                        control.animate({
                            left: direction,
                            height: control.children(':eq('+ next +')').outerHeight()
                        },option.slideSpeed, option.slideEasing, function(){
                            control.css({
                                left: -getWidth()
                            });
                            control.children(':eq('+ next +')').css({
                                left: getWidth(),
                                zIndex: 5
                            });
                            // reset previous slide
                            control.children(':eq('+ prev +')').css({
                                left: getWidth(),
                                display: 'none',
                                zIndex: 0
                            });
                            // end of animation
                            option.animationComplete(next + 1);
                            active = false;
                            // reset position of slides_control
                            controlPosition = $('.slides_control',elem).position().left;
                        });
                    }
                   
                    // set current state for pagination
                    if (option.pagination) {
                        // remove current class from all
                        $('.'+ option.paginationClass +' li.' + option.currentClass, elem).removeClass(option.currentClass);
                        // add current class to next
                        $('.' + option.paginationClass + ' li:eq('+ next +')', elem).addClass(option.currentClass);
                    }
                }else{
                    active = true;
                    control.animate({left:controlPosition},250,function(){active=false});
                }
               
            }
            // on swipe function
            slideHammer.onswipe = function(ev){
                if(active) return;
                if(ev.direction == 'left'){
                    prev = current;
                    next = current + 1;
                    next = total === next ? 0 : next;
                    position = getWidth()*2;
                    direction = -getWidth()*2;
                    current = next;
                    if(total != 2)
                    control.children(':eq('+ prevTemp +')').css({
                        left: getWidth(),
                        display: 'none',
                        zIndex: 0
                    });
                }else if(ev.direction == 'right'){
                    prev = current;
                    next = current - 1;
                    next = next === -1 ? total-1 : next;                               
                    position = 0;                               
                    direction = 0;       
                    current = next;
                    if(total != 2)
                    control.children(':eq('+ nextTemp +')').css({
                        left: getWidth(),
                        display: 'none',
                        zIndex: 0
                    });
                }
                if(ev.direction == 'up'){
                    $('html,body').animate({scrollTop: -windowPosition + 500},500);
                }
                if(ev.direction == 'down'){
                    $('html,body').animate({scrollTop: -windowPosition - 500},500);
                }
                //animate to new height
                if(ev.direction == 'right' || ev.direction == 'left'){
                    active = true;
                    control.animate({
                        left: direction,
                        height: control.children(':eq('+ next +')').outerHeight()
                    },option.slideSpeed, option.slideEasing, function(){
                        control.css({
                            left: -getWidth()
                        });
                        control.children(':eq('+ next +')').css({
                            left: getWidth(),
                            zIndex: 5
                        });
                        // reset previous slide
                        control.children(':eq('+ prev +')').css({
                            left: getWidth(),
                            display: 'none',
                            zIndex: 0
                        });
                        // end of animation
                        option.animationComplete(next + 1);
                        active = false;
                        // reset position of slides_control
                        controlPosition = $('.slides_control',elem).position().left;
                    });
                }
               
                // set current state for pagination
                if (option.pagination) {
                    // remove current class from all
                    $('.'+ option.paginationClass +' li.' + option.currentClass, elem).removeClass(option.currentClass);
                    // add current class to next
                    $('.' + option.paginationClass + ' li:eq('+ next +')', elem).addClass(option.currentClass);
                }
            }
           
            // on tap function
            if($('.modal',control).length){
                if(typeOf($$)=='function'){
                    $$($('.modal',control).get()).removeEvents('click');
                }
                $('.modal',control).unbind('click').click(function(e){e.preventDefault();return false;})
            }
            slideHammer.ontap = function (ev){
                if(ev.originalEvent.button == undefined || ev.originalEvent.button == 0){
                    var target = ev.originalEvent.target;
                    if( target.tagName == "IMG" && target.parentNode.tagName == "A"){
                        if($(target.parentNode).hasClass('modal')){
                        if(!(SqueezeBox.isLoading)){
                            SqueezeBox.open(target.parentNode.getAttribute('href'));   
                            SqueezeBox.isLoading = true;       
                        }
                        }else{
                        window.location = target.parentNode.getAttribute('href');
                        }
                    }
                    if(target.tagName == 'A'){
                        if($(target).hasClass('modal')){
                        if(!(SqueezeBox.isLoading)){
                            SqueezeBox.open(target.getAttribute('href'));
                            SqueezeBox.isLoading = true;       
                        }
                        }else{
                            window.location = target.getAttribute('href');
                        }
                    }
                }
            }
        }
           
        });
    };
   
    // default options
    $.fn.slides.option = {
        preload: false, // boolean, Set true to preload images in an image based slideshow
        preloadImage: '/img/loading.gif', // string, Name and location of loading image for preloader. Default is "/img/loading.gif"
        container: 'slides_container', // string, Class name for slides container. Default is "slides_container"
        generateNextPrev: false, // boolean, Auto generate next/prev buttons
        next: 'next', // string, Class name for next button
        prev: 'prev', // string, Class name for previous button
        pagination: true, // boolean, If you're not using pagination you can set to false, but don't have to
        generatePagination: true, // boolean, Auto generate pagination
        prependPagination: false, // boolean, prepend pagination
        paginationClass: 'pagination', // string, Class name for pagination
        currentClass: 'current', // string, Class name for current class
        fadeSpeed: 350, // number, Set the speed of the fading animation in milliseconds
        fadeEasing: '', // string, must load jQuery's easing plugin before http://gsgd.co.uk/sandbox/jquery/easing/
        slideSpeed: 350, // number, Set the speed of the sliding animation in milliseconds
        slideEasing: '', // string, must load jQuery's easing plugin before http://gsgd.co.uk/sandbox/jquery/easing/
        start: 1, // number, Set the speed of the sliding animation in milliseconds
        effect: 'slide', // string, '[next/prev], [pagination]', e.g. 'slide, fade' or simply 'fade' for both
        crossfade: false, // boolean, Crossfade images in a image based slideshow
        randomize: false, // boolean, Set to true to randomize slides
        play: 0, // number, Autoplay slideshow, a positive number will set to true and be the time between slide animation in milliseconds
        pause: 0, // number, Pause slideshow on click of next/prev or pagination. A positive number will set to true and be the time of pause in milliseconds
        hoverPause: false, // boolean, Set to true and hovering over slideshow will pause it
        autoHeight: false, // boolean, Set to true to auto adjust height
        autoHeightSpeed: 350, // number, Set auto height animation time in milliseconds
        bigTarget: false, // boolean, Set to true and the whole slide will link to next slide on click
        animationStart: function(){}, // Function called at the start of animation
        animationComplete: function(){}, // Function called at the completion of animation
        slidesLoaded: function() {}, // Function is called when slides is fully loaded
        width:'auto',
        equalHeight:true
    };
   
    // Randomize slide order on load
    $.fn.randomize = function(callback) {
        function randomizeOrder() { return(Math.round(Math.random())-0.5); }
            return($(this).each(function() {
            var $this = $(this);
            var $children = $this.children();
            var childCount = $children.length;
            if (childCount > 1) {
                $children.hide();
                var indices = [];
                for (i=0;i<childCount;i++) { indices[indices.length] = i; }
                indices = indices.sort(randomizeOrder);
                $.each(indices,function(j,k) {
                    var $child = $children.eq(k);
                    var $clone = $child.clone(true);
                    $clone.show().appendTo($this);
                    if (callback !== undefined) {
                        callback($child, $clone);
                    }
                $child.remove();
            });
            }
        }));
    };
})(jQuery);

Troy Vera

unread,
Dec 11, 2013, 4:48:44 PM12/11/13
to slid...@googlegroups.com
In the jquery.slides.min.js file, look for

a.stop(!0);

and change it to 

/*a.stop(!0);*/

basically you are commenting out that action.

Cool small world coincidence, your post was originally filed on my birthday - May 9!

Have a great day.

Matt Carson

unread,
Dec 12, 2013, 5:12:33 AM12/12/13
to slid...@googlegroups.com
LOL :@) well I used the older version in the end !

Top day to you  :@)

Matt


--
You received this message because you are subscribed to a topic in the Google Groups "SlidesJS" group.
Reply all
Reply to author
Forward
0 new messages