user756659
user756659

Reputation: 3512

responsiveslides.js - get current slide

Need to get the 'data-number' value from the current slide that is active in the slider. I want to use this value to show/hide additional info in another div of the page. Or if there is some other way other than adding a specific 'data-number' values let me know - I saw nothing in the doc which returning the slide number.

I know I can use the 'after' callback to then do what I want, but not sure how I can go about getting this value in the first place.

<div class="row">
    <div class="col-md-12">
        <ul class="rslides" id="slider1">
            <li data-number="1">
                <img src="/user-data/2/screenshots/demo21.jpg" alt="">
            </li>
            <li data-number="2">
                <img src="/user-data/2/screenshots/demo22.jpg" alt="">
            </li>
            <li data-number="3">
                <img src="/user-data/2/screenshots/demo23.jpg" alt="">
            </li>
            <li data-number="4">
                <img src="/user-data/2/screenshots/demo24.jpg" alt="">
            </li>
            <li data-number="5">
                <img src="/user-data/2/screenshots/demo25.jpg" alt="">
            </li>
        </ul>               
    </div>
</div>

$("#slider1").responsiveSlides({
    auto: false,             // Boolean: Animate automatically, true or false
    speed: 500,            // Integer: Speed of the transition, in milliseconds
    timeout: 4000,          // Integer: Time between slide transitions, in milliseconds
    pager: true,           // Boolean: Show pager, true or false
    nav: true,             // Boolean: Show navigation, true or false
    random: false,          // Boolean: Randomize the order of the slides, true or false
    pause: false,           // Boolean: Pause on hover, true or false
    pauseControls: true,    // Boolean: Pause when hovering controls, true or false
    prevText: "Previous",   // String: Text for the "previous" button
    nextText: "Next",       // String: Text for the "next" button
    maxwidth: "",           // Integer: Max-width of the slideshow, in pixels
    navContainer: "",       // Selector: Where controls should be appended to, default is after the 'ul'
    manualControls: "",     // Selector: Declare custom pager navigation
    namespace: "centered-btns",   // String: Change the default namespace used
    before: function(){},   // Function: Before callback
    after: function(){}     // Function: After callback
}); 

Upvotes: 0

Views: 2431

Answers (2)

MasqueradeCircus
MasqueradeCircus

Reputation: 854

No need to add a data attribute to the list. You can take the index of the current slide like this:

$("#slider1").responsiveSlides({
    after: function(i){
        // i is equal to the index of the current active slide
    // Your code here
    }
);

Upvotes: 3

Ken Wheeler
Ken Wheeler

Reputation: 1958

You can use the following code to get the number you want:

$('.rslides1_on').data('number');

Or

$('.rslides1_on').index()

Upvotes: 0

Related Questions