Drop-down menus are a necessary 'evil' for any complex web-development project. Whether you're working on the admin-area of a web-application, or building a simple UI, drop-down menus are almost indispensable. But you may not feel all that excited creating a drop-down menus of your own when you have these plugins to make the task easier. These plugins don't need you to write complex CSS styles to create a super-simple drop-down menu.

jQuery MegaMenu

Homepage | Demo

Simple Drop Down Menu for jQuery

Or jquery.ui.potato.menu
Demo

jdMenu

jdMenu is super-lightweight and search-engine friendly.
Demo

mcDropdown jQuery Plug-in

Perfect choice for very complex applications. It creates a multi-column hierarchical select UI component. You can autocomplete keyboard entries with it.
Homepage and Demo

Smooth Navigational Menu

"Smooth Navigation Menu is a multi level, CSS list based menu powered using jQuery that makes website navigation a smooth affair. The menu supports both the horizontal and vertical (sidebar) orientation."
Homepage and Demo

Emenu

Emenu is a simple drop-down menu solution that "just works".
Homepage | Demo

nmcDropDown

nmcDropDown is highly configurable drop-down menu plugin for jqeury, yet simple to implement.
Homepage | Demo

jQuery Simple Drop-Down Menu Plugin

It's a very lightweight (<1kb) jquery drop-down menu plugin which is compatible with almost all browsers (including IE6). Its drawback is that it needs you to add some CSS styles.
Homepage and Demo

Superfish

Based on Alist Apart's Suckerfish, Superfish is a full-featured drop-down menu solution with jQuery.
Homepage and Demo

mbMenu

"This is a powerful jQuery component to build easily a multilevel tree menu or a contextual menu (right click) in an intuitive way!"
Homepage | Demo

Labels: , , ,

Read More
NullScriptz, the premium destination for pirated scripts, themes and web-applications is closing its free sign-up program starting 22nd March 2010. It would be invite-only for everyone. However, you always have the option to sign up for VIP accounts for a cost of $30 for 6 months.

In an email to all its members, the site admins wrote:
Starting Monday 22nd March 2010 we will become invite only.
Each active member will get 1 invite per week, so use it wisely, you must be sure of any member you invite, their actions will reflect on you also as your invite means you are vouching for that person, any misdemeanours not only go against them but against you only.
As from Monday we will also be cleaning up the board of inactive members.
An invite every week is a very innovative idea and it doesn't completely stop new members from getting in. But if you want your account now, don't wait before its too late.


Disclaimer: This blog and its author(s) do not condone software piracy. The above post is for information only and should not be taken as a promotion of copyright infringement.

Labels:

Read More
Everyone loves those doodles Google creates from time to time. Most of these logos are created to celebrate various occasions — from Valentine's Day to Holi. Most of these logos are created by Google's webmaster Dennis Hwang. Starting from 1998 to January, 2010, a total of 712 logos have been created so far. But how on earth can you keep track of them? Google has the answer.

The recently launched Google Logos site features all the doodles created so far, starting from 1998. It also showcases fan logos and official logos. You can browse doodles by a simple timeline.

Labels: ,

Read More
Browsing through TemplateMonster the other day, I stumbled upon a Flash template up for sales. As with most flash templates, animated navigation menus are the eye-candy. And this one was no exception. After playing some time with jQuery and CSS (in Notepad++), I made a look-alike. This tutorial is about how you can create the same — and improve it. I hope you’d enjoy the tutorial. Let’s get started.
You might also like:

Objective

We are going to create a vertical navigation menu. When the user hovers on each link, the following will take place:
  • A link with white color will fade in, hiding the link in normal state (with the same href attribute).
  • While the white link fades in, the background of the link will animate from right to left.

What We Need

We need the following:
  • A modern browser (Although it works on IE6 too!)
  • jQuery JavaScript Library. Download from jQuery website.
  • Your favorite text-editor. (Mine is Notepad++)

Create the Layout

We create an HTML file and put the following lines of code in it.
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Animated Flash-like Menu with jQuery and CSS</title>
</head>
<body>
<div id='wrapper'>
 <div id='sidebar'>
  <ul id='menu'>
   <li><a href='#'>Home</a></li>
   <li><a href='#'>About</a></li>
   <li><a href='#'>Services</a></li>
   <li><a href='#'>Testimonials</a></li>
   <li><a href='#'>Contact Us</a></li>
  </ul>
 </div>
</div>
</body>
</html>
Here we created a basic layout. The navigation menu we are creating is placed under the sidebar. (You can put it anywhere. Just keep it in mind it's going to a vertical navigation menu.) The href attribute of each link is set to # (for the purpose of the tutorial.)

Let's Add Some Styles

So, we have our layout. Let's add style to it. Create style.css and put these lines of code in it.
html, body, div, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p, blockquote,
pre, form, fieldset, table, th, td { margin: 0; padding: 0; }

body {
font-size: 14px;
line-height:1.3em;
text-align:center;
}

#wrapper {
width:960px;
margin:0 auto;
text-align:left;
}

#sidebar {
 width:250px;
 float:left;
}

ul#menu {
 list-style:none;
}

ul#menu li {
 margin:0;
 padding:0;
 overflow:hidden;
 float:right;
 position:relative;
}

#menu li a{
 color:#000000;
 float:right;
 padding:6px 8px 6px 3px;
 width:200px;
 z-index:2;
}
The first two blocks of CSS styles are bare necessities. It's somewhat a modified (and lightweight) version of Reset CSS. You may do away with them, as well. We set the width of the wrapper to 960px and sidebar to 250px. (You can set them to anything.) Next, we set the list-style of the unordered list to none. (i.e. removing those pesky circles before each list item.) We set the overflow of each list element to hidden to hide everything that overflows the width of list elements. Position of each list element is set to relative because we are going to put absolutely positioned elements inside list elements. All the links inside list elements are floated to right, width set to 200px and z-index is 2. The z-index is important here because the links will overlay a span element with a lower value of z-index. Don't forget to attach the stylesheet to index.html (under <head> tag.
<link rel='stylesheet' href='style.css'></link>

On Hover

When the page loads up, each link element will change into the following:
<li>
 <a href="#">Home</a>
 <a href="#" class="overlay">Home</a>
 <span></span>
</li>
The extra link element (with class-name "overlay") and span element will created on-the-fly by jQuery, and both will be absolutely positioned. The span element will work as the background but it will be hidden untill the user hovers the pointer on the link. Let's add styles for these two extra mark-ups. Add these lines to style.css
#menu li a.overlay {
 color:#FFFFFF;
 position:absolute;
 text-decoration:none;
}

#menu li span {
 background:#528691;
 position:absolute;
 width:211px;
 height:34px;
 top:0;
 left:211;
 z-index:1;
}
The css definitions are pretty simple and easy to understand. Only one thing may need explanation — the width of the span is set to 211px. The width of each link in the list elements is set to 200px and they have right-padding and left-padding of 8px and 3px respectively. Thus, the effective width of each link will be 200px + 8px + 3px = 211px. Since the span will behave like the background of links, it should have the same width. Also notice that each span is kept 211px far from left. This is just to hide it.

Animate on Hover

Now that we are done with mark-ups and styling elements, it's time we add some javascript to animate the background on hover. Put these lines of code in index.html (under <head> tag)
<script type='text/javascript' src='jquery-1.3.2.min.js'></script>
<script type='text/javascript'>
$(function(){
 $("ul#menu li").each(function() {
  anchor = $(this).html();
  overlay_anchor = $(anchor).addClass("overlay");
  $(this).append(overlay_anchor);
  $(this).append("<span></span>");
  $('.overlay').css({ opacity: 0 });
 });

 $("ul#menu li a,  ul#menu li .overlay").hover(function() {
  $(this).parents("li").children("span").stop().animate({ left: 0 }, 150);
  $(this).parents("li").children("a.overlay").stop().animate({ opacity: 1 }, 100);
  }, function() {
  $(this).parents("li").children("span").stop().animate({ left: "211px" }, 150);
  $(this).parents("li").children("a.overlay").stop().animate({ opacity: 0 }, 100);
  }); 

});
</script>
The first line attaches jQuery library to index.html. Then, we clone the link in each list element and add append the cloned element after setting its classname to "overlay". We also append a span tag (which will animate and behave like background). The opacity of the overlay class is set to 0 to hide it. Next, when the user hovers on links, we animate the span from right to left (by setting its "left" to 0). We also change the opacity of the overlay class to 1. When the user hovers off the links, we change the links back to what it was before. That's it!

Conclusion

The potential of jQuery and CSS working together is great. This is just a simple way to mock up what Flash does best — animation. You can further improve on it. Like animating the current page link on document load. Or something more useful that fits your needs.

Labels: , ,

Read More
What's common between Bruce Lee and Einstein? Elvis Presley and Vladimir Putin? Mike Tyson and Charles Darwin? Or Mao Zedong and Pele? Well, they are under the same frame — a giant painting of famous people. Whatsmore, you can visit WikiPedia pages for those people just by clicking on them. The image, it seems, may not be hand-drawn. The techniques used to achieve this effect is image-mapping.

Labels: ,

Read More