jQuery – Sliders (scrollbars to the rest of us)
Scrollbars are a fundamental GUI widget that exist on every operating system. With the browser continually morphing into it’s own operating system it isn’t surprising that there are several implementations of scrollbars available to us. But, none make the concept of a scrollbar as flexible and as easy to use as the ones available to us from the jQuery UI library. Not only can we use these for scrollbars but we can also use them for other scrollbar like widgets simply by restyling them.
To place a slider on the screen, this is the basic HTML you’ll need:
<div id="slider"></div>
You will then need to style the div to get the width and height correct. For this demo, I’m styling it to be a vertical slider:
#slider { height: 242px; width: 13px; margin:10px; }
Our basic javascript that turns this into a scrollbar is:
$(function() { $("#slider").slider(); });
And, just like we needed to do with the resizing code, we will need to import the theme we want to use. See the article on resizing for the details on that.
http://blog.dmbcllc.com/2009/02/18/jquery-ui-resizable-w-aspnet-themes/
Which gives us a scrollbar that looks like this:
There are several properties and events that we can hook into to control how many units the slider represents and the range of units. This allows the slider to represent positive and negative numbers. You can also force the orientation, but the jQuery code is pretty good about guessing it for you. If I had made the div wider than it was high, I would have rendered a horizontal slider.
If you’ve ever coded a scrollbar in windows, you’ll notice that the events we have been provided in jQuery are very similar to the events that are supplied in windows. This makes sense because any slider would need to tell us when it started, when it ended, if it is currently sliding and when it stops. We can use these events to update information in our user interface. For example, it would not take a lot of work to have this scroll bar work in conjunction with another div to provide a custom scrolling effect. Something I plan to address in a future post.
Other post in jQuery
- jQuery - The Man, The Myth, The Legend - October 8th, 2008
- Getting started with jQuery and ASP.NET - October 15th, 2008
- jQuery - Explaining Last Week's Code - October 21st, 2008
- Friday Books - "Learning jQuery" - October 24th, 2008
- jQuery Simple Selectors - October 28th, 2008
- Friday Books - "jQuery in Action" - October 31st, 2008
- jQuery Selectors - Looks just like CSS - November 6th, 2008
- VS2008 SP1 Hotfix to Support "-vsdoc.js" IntelliSense Doc Files - November 11th, 2008
- jQuery Looks like XPath - November 12th, 2008
- jQuery - class manipulation - November 19th, 2008
- jQuery - Events - December 2nd, 2008
- Host jQuery at Google (with Intellisense support) - December 10th, 2008
- jQuery - Calling Your Own Functions - December 16th, 2008
- Friday Books - jQuery Reference Guide - December 19th, 2008
- jQuery - Creating Plug-ins - December 23rd, 2008
- jQuery - Loading Partial Content - December 30th, 2008
- jQuery - Positioning Elements - January 6th, 2009
- AjaxToolKit TabControl Disabled Tab - January 12th, 2009
- jQuery, JSON, and ASP.NET - January 15th, 2009
- Review of the MDC at NYC - January 21st, 2009
- jQuery - Retrieving HTML Fragments - January 22nd, 2009
- jQuery GUI - Drag - February 3rd, 2009
- jQuery - Drop - February 12th, 2009
- jQuery UI - Resizable w/ ASP.NET Themes - February 18th, 2009
- jQuery, bgiframe and IE6 z-order hacks - February 19th, 2009
- jQuery - Sliders (scrollbars to the rest of us) - March 4th, 2009
- jQuery - Using Slider as a Scrollbar - March 12th, 2009
- jQuery - Auto Scrolling the Slider - March 23rd, 2009
- Live Presentation of jQuery - March 23rd, 2009
- Just a Week Away! - April 7th, 2009
- jQuery Tabs - April 9th, 2009
- jQuery Demos From Last Tuesday’s Presentation - April 16th, 2009
- jQuery – Accordion - May 6th, 2009
- CustomValidationControl and jQuery - May 11th, 2009
- Mixing ASP.NET, jQuery and JSON - May 12th, 2009
- jQuery Progressbar - May 20th, 2009
- jQuery – Dialog - June 2nd, 2009
- jQuery – Modal Dialog - June 9th, 2009
- Does jQuery Make Us Lazy? - June 18th, 2009
- jQuery Dialog – With Validation Controls - June 25th, 2009
- jQuery – Date Picker - July 2nd, 2009
- jQuery Splitter - July 21st, 2009
- jQuery Expand/Collapse Using Head Tags - October 15th, 2009
- Do you Need My Help? - November 18th, 2009
- Flash to jQuery - November 30th, 2009
- JQuery, Cufon, and Dynamic Content - December 1st, 2009
- jQuery, Each() and Async Gets - December 2nd, 2009
- jQuery and ASP.NET UpdatePanel - January 6th, 2010
- jQuery 1.4 Released - January 15th, 2010
- jQuery Cookbook - July 15th, 2010
- AddThis.com From E-Mail - May 25th, 2011
[...] jQuery – Sliders (scrollbars to the rest of us) (tags: jquery javascript sliders) [...]
[...] jQuery – Sliders (scrollbars to the rest of us) [...]