jQuery - Auto Scrolling the Slider
Join the DZone community and get the full member experience.
Join For FreeI would like to make the jquery steps slider to do auto-increment when the window loads. Is there an easy way to trigger the slide to move by itself ?
I’m assuming this question is looking for the content to auto scroll as well. So, let’s pull up the code from last week and take a look at this issue.
There is a timer plugin available for jQuery that will do some of the work for you, but all we really need for this functionality is:
- A function to do the auto incrementing
- A call to the javascript setTimeout() function.
So first, the auto incrementing function.
function scrollWindow() {
var slideValue;
slideValue = $("#slider").slider("value");
if(slideValue > -100)
{
$("#slider").slider("value", slideValue - 1);
setTimeout(scrollWindow, 1000);
}
}
A couple things to note about this function:
- We are retrieving the current position of the slider using the .slider() method of the slider widget.
- We are assuming that the range of our slider is between 0 and -100.
- We call setTimeout at the end to call this function again in a second.
- We only call setTimeout if we have not reached the end of our scrolling.
The only thing left is that we need to kick this off when the page loads. To do this we add a call to setTimeout in our jQuery ready method:
$(function() {
$("#slider").slider(
{ change: handleChange,
slide: handleSlide,
min: -100,
max: 0
});
setTimeout(scrollWindow, 1000);
});
The actually scrolling of the window happens “automatically” with the code we wrote last week.
Published at DZone with permission of Dave Bush, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.
Trending
-
Essential Architecture Framework: In the World of Overengineering, Being Essential Is the Answer
-
Software Development: Best Practices and Methods
-
Revolutionizing System Testing With AI and ML
-
Getting Started With Istio in AWS EKS for Multicluster Setup
Comments