SliderNav: iPhone Style Contact Lists Using jQuery and CSS
This effect is actually from Techi.com, a new blog launched by the guys at WebDesignerDepot, where they use it to display their popular tags in the sidebar. I wanted to see how easy (or hard) it was to recreate using JQuery and CSS, and it turns out that it’s pretty simple to do. I’ve packed it into a neat little plugin so you hopefully you can make some use of it!
Updated May 25: I’ve just added a new option that displays arrows above and below the SliderNav object. This is used to navigate longer sections for users that do not have a mouse wheel (or those who are on a mobile browser).
SliderNav is a JQuery plugin that lets you add dynamic, sliding content using a vertical navigation bar (index). It is made mainly for alphabetical listings but can be used with anything, though longer words can look a bit awkward. The plugin automatically adds the navigation and sets the height for the object based on how tall the navigation is, in order to make sure users have access to the entire list. I also used the overflow: auto; property for the actual content so you can use your mousewheel to scroll through the content as well.
The plugin has been tested (and works fine) on Firefox 3, Chrome 5, IE7, Safari 4 and Opera 10.
Download
You can download the full source, minified version, css file, or view the example online.
Usage Instructions
SliderNav is super easy to use, but first you have to load JQuery, the plugin and the relevant CSS file in order to use it:
1 2 3 | <link rel="stylesheet" type="text/css" href="slidernav.css" media="screen, projection" /> <script type="text/javascript" src="jquery-1.4.2.js"></script> <script type="text/javascript" src="slidernav.js"></script> |
After you’ve done that, create the section content in HTML using the following structure (you can name your element anything):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | <div id="slider"> <div class="slider-content"> <ul> <li id="a"><a name="a" class="title">A</a> <ul> <li><a href="/">Adam</a></li> <li><a href="/">Alex</a></li> <li><a href="/">Ali</a></li> <li><a href="/">Apple</a></li> <li><a href="/">Arthur</a></li> <li><a href="/">Ashley</a></li> </ul> </li> <li id="b"><a name="b" class="title">B</a> <ul> <li><a href="/">Barry</a></li> <li><a href="/">Becky</a></li> <li><a href="/">Biff</a></li> <li><a href="/">Billy</a></li> <li><a href="/">Bozarking</a></li> <li><a href="/">Bryan</a></li> </ul> </li> etc... </ul> </div> </div> |
Once you’ve set the HTML, it’s simply a matter of calling the sliderNav function for the element you’ve just created:
1 2 3 4 5 | <script type="text/javascript"> $(document).ready(function(){ $('#slider').sliderNav(); }); </script> |
Custom Options
The first of the configurations is height – set this to a pixel value if you wish to override the automatic detection based on the vertical navigation (you may need to change the min-height in the CSS too). Also by default, the plugin will generate an alphabetical navigation that uses all 26 letters of the English alphabet, however you can also use custom items using the following code:
1 | $('#slider').sliderNav({items:['item1','item2','item3'], height:'200'}); |
You can also set arrows to true (default) or false, which displays arrows above and below the slider object to allow scrolling longer sections. Click on an arrow will scroll the object by it’s height – I used this method to keep code to the minimum, as anything smoother/nicer-looking required a lot more code. The last customizable option is debug, which can either be true or false. This adds a little bit of text on the bottom of the slider that shows how many pixels the current offset is (was useful during early development, probably not anymore).
Possible Use Cases
I believe this navigation can be useful in certain circumstances, mainly where you’re trying to show a lot of information that has been organized alphabetically (or by date) in a small area. For instance, it could be used to create a WordPress widget that lists all posts alphabetically or better yet, a widget for complete archives categorized by date. I’m not sure how much better it would be than traditional means of navigation but it’s certainly worth trying out.
Conclusion
As usual, please leave any feedback if you have it. I’m still very new to the JQuery plugin scene so there may be bugs or mistakes – if you find one, please mention it in the comments.
If you haven’t yet, please subscribe to the RSS feed and follow us on Twitter for more plugins and other useful bits!
Enjoyed the post?
Then you should follow me on Twitter or subscribe to the RSS feed.


Pingback: iPhone SlideNav Style | UrbanBlog
Pingback: Create Alphabetical Navigation Bar With SliderNav | MyInfoNetHome.Info
Pingback: iPad Links: Wednesday, May 19, 2010 « Mike Cane's iPad Test
Pingback: SliderNav : carnet d’adresses type iPhone avec JQuery/Css
Pingback: Jquery – Iphonообразное меню « Блог веб-разработчика
Pingback: SliderNav « nidpor – western snapper – tawny jam
Pingback: Créez un menu organisé style iPhone
Pingback: slidernav — Carnet d’adresse avec jQuery
Pingback: SliderNav, Lista dei contatti in stile iPhone con jQuery e CSS! | sastgroup.com
Pingback: Links 17 | WoWa's-Webdesign Blog
Pingback: SliderNav: iPhone Style Contact Lists Using JQuery and CSS | Aesthetically speaking...
Pingback: Slidernav, lista dei contatti in stile iphone con jquery e css!
Pingback: Dynamic, Sliding Content Using Vertical Navigation Bar « PIXEL SHOP
Pingback: Lista con desplazamiento estilo iPhone con jQuery | Kabytes
Pingback: SliderNav – Listenscrollen wie beim iPhone » iPhone, JQuery, slider, slidernav » der Webarchitekt
Pingback: SliderNav, Répertoire avec jQuery| Webmaster – Ressources et outils gratuits pour votre site internet – Free Tools| Free Tools, Le meilleur des outils gratuits pour webmaster
Pingback: Slider Nav,liste en jQuery effet iPhone | 5axe Deluxe Edition – Le blog
Pingback: links for 2010-05-28 — Guiabreve
Pingback: Collective: SliderNav: iPhone Style Contact Lists Using JQuery and CSS | Codrops
Pingback: Best Tutorials for Web Development » Blog Archive » Collective: SliderNav: iPhone Style Contact Lists Using JQuery and CSS
Pingback: SliderNav: rubrica contatti in stile iPhone con jQuery e CSS | MaiNick Web
Pingback: Dynamic, Sliding Content Using Vertical Navigation Bar | Webplus - web developer resource blog
Pingback: Dynamic, Sliding Content Using Vertical Navigation Bar - Technology Demos & Downloads
Pingback: 5 Beispiele für schöne Menüs mit und ohne jQuery | H.-Peter Pfeufer - Blog
Pingback: 139 Ressources Javascript et jQuery
Pingback: jQueryでiPhoneの電話帳UIを実装するプラグイン「SliderNav」 - BlackFlag – Web Development Technical
Pingback: top jquery pluginy | my design blog
Pingback: jQuery :: Easy iPhone like contact list | Mydons {Blog Growing Faster}
Pingback: 14 Useful jQuery Plugins For Web Designers And Developers « qeqnes | Designing. jQuery, Ajax, PHP, MySQL and Templates
Pingback: 12 jQuery Plugins For Web Designers & Developers | Jeff Adams - Freelance Web Designer, Essex
Pingback: 15 Useful jQuery Plugins For Web Designers And Developers : Design Tailors
Pingback: Improve Website Usability Using jQuery, HTML5, And CSS3
Pingback: Improve Website Usability Using jQuery, HTML5, And CSS3 | Free Web Design Tucson
Pingback: Advances in web technologies such as HTML5, CSS3, and jQuery « Beginners Weblog Reference
Pingback: Improve Website Usability Using jQuery, HTML5, And CSS3 | Graphic Design
Pingback: 24 Best jQuery Scripts to Visually Improve Website
Pingback: Use HTML5, CSS3 and jQuery to enhance the user experience site - Open News
Pingback: web前端开发资源-使用HTML5,CSS3和jQuery增强网站用户体验 | web前端开发
Pingback: 使用HTML5、CSS3和jQuery增强网站用户体验
Pingback: 使用HTML5、CSS3和jQuery增强网站用户体验 | Plysite.com
Pingback: Improve Website Usability Using jQuery, HTML5, And CSS3 | WebDesign Terminal
Pingback: 390 ressources Javascript & jQuery
Pingback: 使用HTML 5、CSS3和jQuery增强网站用户体验 | 哈尔滨网站建设_网络营销
Pingback: 使用HTML5、CSS3和jQuery增强网站用户体验 « ARM9 & Embedded System
Pingback: 使用HTML5,CSS3和jQuery增强网站用户体验 - html5html5
Pingback: SliderNav::jQueryでiPhoneの連絡先UIを実装 | gworks web site
Pingback: Slidernav | Informatielezen.nl
Pingback: 15 Useful jQuery Plugins For Web Designers And Developers | Cheapest Web Design
Pingback: Dynamic, Sliding Content Using Vertical Navigation Bar | Developer Tools - Open Source Web Development Tools
Pingback: 使用HTML5,CSS3和jQuery来增强网站的用户体验和使用乐趣 - Ben's Blog
Pingback: 20+ Useful jQuery Plugins That Will Improve User Experience On Your Website | Easy jQuery | Free Popular Tips Tricks Plugins API Javascript and Themes
Pingback: Mais Bonitos » 5 Exemplos de menus bonitos com e sem jQuery
Pingback: mapa con direcciones de clientes | Open Cart Know How
Pingback: 使用HTML5,CSS3和jQuery增强网站用户体验 – 90互联网数据中心
Pingback: Improve Website Usability Using jQuery, HTML5, And CSS3 | DumasLab.com
Pingback: Liens pour le développeur web front-end et l’intégrateur HTML & CSS | Agence web design Montreal Quebec Canada | Sauvage Design Studio
Pingback: Dynamic, Sliding Content Using Vertical Navigation Bar | tutspond