views:

90

answers:

1

How to add pause button in this jQuery image slider? I want to add Pause on click button at last after 4 ?

Like this: see example pic http://shup.com/Shup/431390/110929231254-My-Desktop.png

alt text

http://www.sohtanaka.com/web-design/examples/image-slider/

I want add another link button to pause the slider on current slide. and it should not rewind to 1st slide. I need like a toogle button to on/off the animation.

This is html code of buttons.

    <div class="paging">

        <a href="#" rel="1">1</a>
        <a href="#" rel="2">2</a>
        <a href="#" rel="3">3</a>
        <a href="#" rel="4">4</a>
    </div>

This is jquery code of buttons.

$(document).ready(function() {

    //Set Default State of each portfolio piece
    $(".paging").show();
    $(".paging a:first").addClass("active");

    //Get size of images, how many there are, then determin the size of the image reel.
    var imageWidth = $(".window").width();
    var imageSum = $(".image_reel img").size();
    var imageReelWidth = imageWidth * imageSum;

    //Adjust the image reel to its new size
    $(".image_reel").css({'width' : imageReelWidth});

    //Paging + Slider Function
    rotate = function(){    
        var triggerID = $active.attr("rel") - 1; //Get number of times to slide
        var image_reelPosition = triggerID * imageWidth; //Determines the distance the image reel needs to slide

        $(".paging a").removeClass('active'); //Remove all active class
        $active.addClass('active'); //Add active class (the $active is declared in the rotateSwitch function)

        //Slider Animation
        $(".image_reel").animate({ 
            left: -image_reelPosition
        }, 500 );

    }; 

    //Rotation + Timing Event
    rotateSwitch = function(){      
        play = setInterval(function(){ //Set timer - this will repeat itself every 3 seconds
            $active = $('.paging a.active').next();
            if ( $active.length === 0) { //If paging reaches the end...
                $active = $('.paging a:first'); //go back to first
            }
            rotate(); //Trigger the paging and slider function
        }, 7000); //Timer speed in milliseconds (3 seconds)
    };

    rotateSwitch(); //Run function on launch

    //On Hover
    $(".image_reel a").hover(function() {
        clearInterval(play); //Stop the rotation
    }, function() {
        rotateSwitch(); //Resume rotation
    }); 

    //On Click
    $(".paging a").click(function() {   
        $active = $(this); //Activate the clicked paging
        //Reset Timer
        clearInterval(play); //Stop the rotation
        rotate(); //Trigger rotation immediately
        rotateSwitch(); // Resume rotation
        return false; //Prevent browser jump to link anchor
    }); 

});

Try here with live editable example http://jsfiddle.net/3TJrj/128/

+1  A: 

give a variable and check it when rotating

var chk=0;
$('id').click(function(){
chk=1;});

give ifcondition in rotate function and also in play , i hope it works . .

pahnin
Please provide more details
metal-gear-solid
http://jsfiddle.net/pahnin/fakeu/ see this sorry for late i was busy and if u satisfied please approve the answer
pahnin
thanks it's working
metal-gear-solid