<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Glenn's Second Brain &#187; ajax</title>
	<atom:link href="http://www.glennmarcus.com/blog/topic/ajax/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.glennmarcus.com/blog</link>
	<description>For the spillover</description>
	<lastBuildDate>Thu, 15 Apr 2010 23:28:56 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>45 Fresh Useful JavaScript and jQuery Techniques and Tools</title>
		<link>http://www.glennmarcus.com/blog/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/</link>
		<comments>http://www.glennmarcus.com/blog/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/#comments</comments>
		<pubDate>Fri, 12 Mar 2010 15:14:41 +0000</pubDate>
		<dc:creator>Smashing Editorial</dc:creator>
				<category><![CDATA[ajax]]></category>
		<category><![CDATA[ui]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[user/12651333281871808648/label/ui]]></category>
		<category><![CDATA[user/12651333281871808648/label/web20]]></category>
		<category><![CDATA[user/12651333281871808648/state/com.google/read]]></category>
		<category><![CDATA[user/12651333281871808648/state/com.google/tracking-body-link-used]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/75f88a06be3ae8fd</guid>
		<description><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"> <img src="http://creatives.commindo-media.de/static/smashing-magazine-advertisement.gif" alt="Smashing-magazine-advertisement in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" border="0"/><br /> <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=56"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=56" border="0" alt=" in 45 Fresh Useful JavaScript and jQuery Techniques and Tools"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=63"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=63" border="0" alt=" in 45 Fresh Useful JavaScript and jQuery Techniques and Tools"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=64"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=64" border="0" alt=" in 45 Fresh Useful JavaScript and jQuery Techniques and Tools"/></a></div>
</td>
</tr>
</table>
<p>Yes, this is another round-up of <strong>fresh and useful Javascript techniques, tools and resources</strong>. But donâ€™t close the tab yet, as you might find this one very useful. In this selection we present calendars, forms, buttons, navigation, debugging, optimization and compatibility tables as well as handy resources and tools. We also cover various jQuery-plugins that will help you extend the functionality of your website and improve user experience with ready components or coding solutions.</p>
<p>The last section also covers a number of useful educational resources such as a compilation of useful JavaScript coding practices, a detailed comparison of JavaScript frameworks and general JavaScript programming conventions. We are looking forward to your feedback.</p>
<p>You may be interested in the following related posts:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2009/06/21/50-fresh-javascript-tools-that-will-improve-your-workflow/">50 Fresh JavaScript Tools That Will Improve Your Workflow</a></li>
<li><a href="http://www.smashingmagazine.com/2010/01/12/45-powerful-css-javascript-techniques/">45 Powerful CSS/JavaScript-Techniques</a></li>
<li><a href="http://www.smashingmagazine.com/2009/03/08/70-new-useful-ajax-and-javascript-techniques/">70 Useful AJAX And JavaScript Techniques</a></li>
</ul>
<p> [By the way: The <a href="http://www.smashingmagazine.com/network-posts/">network tab</a> (on the top of the page) is updated several times a day. It features manually selected articles from the best web design blogs!]<br />
<h3>Calendars and Timelines</h3>
</p><p><a href="http://www.radoslavdimov.com/jquery-plugins/jquery-plugin-digiclock/">jDigiClock â€“ Digital Clock (HTC Hero inspired)</a><br /> jDigiClock is a jQuery plugin inspired from HTC Hero Clock Widget.</p>
<p><a href="http://www.radoslavdimov.com/jquery-plugins/jquery-plugin-digiclock/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-82.jpg" alt="Javascript-techniques-82 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://home.comcast.net/~vonholdt/test/clock_slide/index.htm">jQuery Sliding Clock v1.1</a><br /> jQuery transpearant Slider clock with CSS sprites.</p>
<p><a href="http://home.comcast.net/~vonholdt/test/clock_slide/index.htm"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-67.jpg" alt="Javascript-techniques-67 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://home.jongsma.org/software/js/datepicker">Date / Time Picker</a><br /> Note that this control is not designed to work in IE6; although it will function correctly in most cases, the positioning of the calendar may be way off depending on how your page is styled.</p>
<p><a href="http://home.jongsma.org/software/js/datepicker"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-05.jpg" alt="Javascript-techniques-05 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<h3>JavaScript Debugging and Validation Tools</h3>
<p><a href="http://www.mozilla.org/projects/venkman/">Venkman JavaScript Debugger project page</a><br /> Venkman is the code name for Mozillaâ€™s JavaScript Debugger. Venkman aims to provide a powerful JavaScript debugging environment&#8230;</p>]]></description>
			<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"> <img src="http://creatives.commindo-media.de/static/smashing-magazine-advertisement.gif" alt="Smashing-magazine-advertisement in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" border="0"/><br /> <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=56"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=56" border="0" alt=" in 45 Fresh Useful JavaScript and jQuery Techniques and Tools"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=63"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=63" border="0" alt=" in 45 Fresh Useful JavaScript and jQuery Techniques and Tools"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=64"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=64" border="0" alt=" in 45 Fresh Useful JavaScript and jQuery Techniques and Tools"/></a></div>
</td>
</tr>
</table>
<p>Yes, this is another round-up of <strong>fresh and useful Javascript techniques, tools and resources</strong>. But donâ€™t close the tab yet, as you might find this one very useful. In this selection we present calendars, forms, buttons, navigation, debugging, optimization and compatibility tables as well as handy resources and tools. We also cover various jQuery-plugins that will help you extend the functionality of your website and improve user experience with ready components or coding solutions.</p>
<p>The last section also covers a number of useful educational resources such as a compilation of useful JavaScript coding practices, a detailed comparison of JavaScript frameworks and general JavaScript programming conventions. We are looking forward to your feedback.</p>
<p>You may be interested in the following related posts:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2009/06/21/50-fresh-javascript-tools-that-will-improve-your-workflow/">50 Fresh JavaScript Tools That Will Improve Your Workflow</a></li>
<li><a href="http://www.smashingmagazine.com/2010/01/12/45-powerful-css-javascript-techniques/">45 Powerful CSS/JavaScript-Techniques</a></li>
<li><a href="http://www.smashingmagazine.com/2009/03/08/70-new-useful-ajax-and-javascript-techniques/">70 Useful AJAX And JavaScript Techniques</a></li>
</ul>
<p> [By the way: The <a href="http://www.smashingmagazine.com/network-posts/">network tab</a> (on the top of the page) is updated several times a day. It features manually selected articles from the best web design blogs!]<br />
<h3>Calendars and Timelines</h3>
<p><a href="http://www.radoslavdimov.com/jquery-plugins/jquery-plugin-digiclock/">jDigiClock â€“ Digital Clock (HTC Hero inspired)</a><br /> jDigiClock is a jQuery plugin inspired from HTC Hero Clock Widget.</p>
<p><a href="http://www.radoslavdimov.com/jquery-plugins/jquery-plugin-digiclock/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-82.jpg" alt="Javascript-techniques-82 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://home.comcast.net/~vonholdt/test/clock_slide/index.htm">jQuery Sliding Clock v1.1</a><br /> jQuery transpearant Slider clock with CSS sprites.</p>
<p><a href="http://home.comcast.net/~vonholdt/test/clock_slide/index.htm"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-67.jpg" alt="Javascript-techniques-67 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://home.jongsma.org/software/js/datepicker">Date / Time Picker</a><br /> Note that this control is not designed to work in IE6; although it will function correctly in most cases, the positioning of the calendar may be way off depending on how your page is styled.</p>
<p><a href="http://home.jongsma.org/software/js/datepicker"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-05.jpg" alt="Javascript-techniques-05 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<h3>JavaScript Debugging and Validation Tools</h3>
<p><a href="http://www.mozilla.org/projects/venkman/">Venkman JavaScript Debugger project page</a><br /> Venkman is the code name for Mozillaâ€™s JavaScript Debugger. Venkman aims to provide a powerful JavaScript debugging environment for Gecko-based browsers namely Firefox 3.x, the Netscape 7.x series of browsers, Netscape 9.x series, Mozilla Seamonkey 1.x and Mozilla Seamonkey 2.x. It does not include Gecko-based browsers such as K-Meleon 1.x, Galeon 2.x and Netscape 8.x. The debugger is available as an add-on package in XPI format. Venkman JavaScript Debugger has been provided as part of the Mozilla install distribution since October 3rd 2001.</p>
<p><a href="http://www.mozilla.org/projects/venkman/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-14.jpg" alt="Javascript-techniques-14 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.my-debugbar.com/wiki/CompanionJS/HomePage"> CompanionJS</a><br /> Companion.JS (pronounced Companion dot JS or CJS) is a Javascript debugger for IE.</p>
<p><a href="http://www.my-debugbar.com/wiki/CompanionJS/HomePage"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-32.jpg" alt="Javascript-techniques-32 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://net.tutsplus.com/tutorials/javascript-ajax/how-to-test-your-javascript-code-with-qunit/">How to Test your JavaScript Code with QUnit</a><br /> QUnit is a powerful JavaScript unit testing framework that helps you to debug code. Itâ€™s written by members of the jQuery team, and is the official test suite for jQuery. But QUnit is general enough to test any regular JavaScript code, and itâ€™s even able to test server-side JavaScript via some JavaScript engine like Rhino or V8.</p>
<p><a href="http://net.tutsplus.com/tutorials/javascript-ajax/how-to-test-your-javascript-code-with-qunit/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-44.jpg" alt="Javascript-techniques-44 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://jsbin.com/">JS Bin â€“ Collaborative JavaScript Debugging</a><br /> JS Bin is an open source collaborative JavaScript debugging tool.</p>
<p><a href="http://jsbin.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-12.jpg" alt="Javascript-techniques-12 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<h3>Forms, Buttons &amp; Navigation</h3>
<p><a href="http://tutorialzine.com/2009/10/google-wave-history-slider-jquery/">Making a Google Wave History Slider</a><br /> Here is shown how to  create a Google Wave-like history slider. Using it will enable visitors to go back and forth in time to view the changes that take  place on a comment thread.</p>
<p><a href="http://tutorialzine.com/2009/10/google-wave-history-slider-jquery/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-73.jpg" alt="Javascript-techniques-73 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://theodin.co.uk/blog/design/fancy-radio-buttons-jquery.html">Fancy Radio Buttons With jQuery</a><br /> Creation of 2 mandatory option sets that a user could choose, while hiding off the radio button inputs and using an anchor links to make it a bit more usable.</p>
<p><a href="http://theodin.co.uk/blog/design/fancy-radio-buttons-jquery.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-62.jpg" alt="Javascript-techniques-62 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.tutorial9.net/web-tutorials/creative-button-animations-with-sprites-and-jquery-part-2/">Creative Button Animations with Sprites and JQuery</a><br /> Fading hover effect for which the transition is smoothed with JavaScript, using jQuery library.</p>
<p><a href="http://www.tutorial9.net/web-tutorials/creative-button-animations-with-sprites-and-jquery-part-2/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-83.jpg" alt="Javascript-techniques-83 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.vileworks.com/password-unmasking">Password (un)Masking</a><br /> JavaScript jQuery that toggles the masking and unmasking of the password  field.</p>
<p><a href="http://www.vileworks.com/password-unmasking"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-68.jpg" alt="Javascript-techniques-68 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://css-tricks.com/jquery-magicline-navigation/">jQuery MagicLine Navigation</a><br /> These â€œslidingâ€ style navigation bars have been around a while, and turns out itâ€™s really pretty darn easy. Here are put two examples together.</p>
<p><a href="http://css-tricks.com/jquery-magicline-navigation/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-49.jpg" alt="Javascript-techniques-49 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://tympanus.net/codrops/2009/12/11/fixed-fade-out-menu-a-css-and-jquery-tutorial/">Fixed Fade Out Menu: A CSS and jQuery Tutorial</a><br /> The aim is to have a fixed navigation that follows the user when he scrolls, and only subtly showing itself by fading out and becoming almost transparent. When the user hovers over it, the menu then becomes opaque again.  Inside of the navigation we will have some links, a search input and a top and bottom button that let the user navigate to the top or the bottom of the page.</p>
<p><a href="http://tympanus.net/codrops/2009/12/11/fixed-fade-out-menu-a-css-and-jquery-tutorial/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-52.jpg" alt="Javascript-techniques-52 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://cssglobe.com/post/7161/jquery-plugin-simplest-twitterlike-dynamic-character-count-for-textareas">jQuery plugin: Simplest Twitter-like dynamic character count for textareas and input fields</a><br /> The best way to explain what this plugin does is to mention Twitter. Twitter posts are limited to 140 characters. While typing the Twitter post there is this always present information about how many characters the users have before reaching the limit. The information is not only provided merely by displaying a number, there are different colors applied to certain stages to notify the user about the status.</p>
<p><a href="http://www.csskarma.com/blog/sliding-labels-v2/">Sliding Labels v2</a><br /> Form label keeping the label inline, but sliding it off to the left rather than going away on click.</p>
<p><a href="http://www.csskarma.com/blog/sliding-labels-v2/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/03/javascript-techniques-87.jpg" alt="Javascript-techniques-87 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="100"/></a></p>
<p><a href="http://demos.usejquery.com/ketchup-plugin/index.html">Ketchup Plugin</a><br /> Ketchup is a slim jQuery Plugin that validates your forms. It aims to be very flexible and extendable for its appearance and functionality.</p>
<p><a href="http://demos.usejquery.com/ketchup-plugin/index.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-84.jpg" alt="Javascript-techniques-84 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<h3>Layout tools</h3>
<p><a href="http://www.kromosome.net/cssdesignergrid/">jQuery {css}designerGrid Plugin</a><br /> {css} designerGrid is A jQuery Plugin developed for website interface developers who use the grid system of layout. {css} designerGrid is intended to assist these developers with CSS prototyping.</p>
<p><a href="http://www.kromosome.net/cssdesignergrid/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-80.jpg" alt="Javascript-techniques-80 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://code.google.com/p/css-template-layout/"> css-template-layout</a><br /> JavaScript (jQuery) implementation of the CSS Template Layout Module</p>
<p><a href="http://code.google.com/p/css-template-layout/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-33.jpg" alt="Javascript-techniques-33 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://blog.creativityden.com/fluid-grid-using-jquery/">How to create a fluid grid with jQuery</a><br /> Grid-based layout is probably the more preferred way to style up a webpage to give it more magazine-like look and feel. This tutorial is about how to use CSS and Javascript to create a fluid grid-based layout (See demo here). The algorithm/procedure used in this tutorial is very simple and straightforward. There are more advanced algorithms out there which can handle multiple scenarios. But the purpose is to understand the basic logic on how to create such layout. So here it goesâ€¦</p>
<p><a href="http://blog.creativityden.com/fluid-grid-using-jquery/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-51.jpg" alt="Javascript-techniques-51 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://code.google.com/p/closure-templates/">closure-templates</a><br /> Closure Templates are a client- and server-side templating system that helps you dynamically build reusable HTML and UI elements. They are easy to learn and customizable to fit your applicationâ€™s needs. Closure Templates support JavaScript and Java and use a data model and expression syntax that works for either language. You can also use the built-in message support to easily localize your applications.</p>
<p><a href="http://code.google.com/p/closure-templates/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-46.jpg" alt="Javascript-techniques-46 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<h3>Useful jQuery Plugins</h3>
<p><a href="http://code.drewwilson.com/entry/tiptip-jquery-plugin">TipTip jQuery Plugin</a><br /> TipTip detects the edges of the browser window and will make sure the tooltip stays within the current window size. As a result the tooltip will adjust itself to be displayed above, below, to the left or to the right of the element with TipTip applied to it, depending on what is necessary to stay within the browser window. TipTip is a very lightweight and intelligent custom tooltip jQuery plugin. It uses ZERO images and is completely customizable via CSS. Itâ€™s also only 3.5kb minified!</p>
<p><a href="http://code.drewwilson.com/entry/tiptip-jquery-plugin"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-65.jpg" alt="Javascript-techniques-65 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://fredhq.com/projects/roundabout/">jQuery Roundabout</a><br /> Roundabout is a jQuery plugin that converts a structure of static HTML elements into a highly customizable turntable-like interactive area. (And now, not just turntables, but many shapes!)</p>
<p><a href="http://fredhq.com/projects/roundabout/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-69.jpg" alt="Javascript-techniques-69 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://jparse.kylerush.net/">jParse â€“ jQuery XML Parse Plugin</a><br /> jParse is a jQuery plugin that allows you to parse XML that was fetched with the jQuery .ajax method (making it fully customizable).</p>
<p><a href="http://jparse.kylerush.net/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-72.jpg" alt="Javascript-techniques-72 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://razorjack.net/quicksand/">jQuery Quicksand plugin</a><br /> Reorder and filter items with a nice shuffling animation.</p>
<p><a href="http://razorjack.net/quicksand/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-48.jpg" alt="Javascript-techniques-48 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://thinkinginweb.com/sections/articles/18-11-2009-typeQuery-change-website-typography-with-jquery.aspx"> typeQuery, change website typography with jquery</a><br />typeQuery gives the flexibility to change the font-family for everything you define with class, id, or tag, this example is referring to the selected item on a select object with id=â€tagâ€ and the font-family value at select object with id=â€familyâ€: <code>$($("#tag").val()).css("font-family", $("#family").val());</code></p>
<p><a href="http://thinkinginweb.com/sections/articles/18-11-2009-typeQuery-change-website-typography-with-jquery.aspx"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-70.jpg" alt="Javascript-techniques-70 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://lab.smashup.it/flip/">Flip! A jQuery plugin v0.9.9</a><br /> Flip is a jQuery plugin that will flip easily your elements in four directions.</p>
<p><a href="http://lab.smashup.it/flip/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-55.jpg" alt="Javascript-techniques-55 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.webresourcesdepot.com/data-encryption-with-javascript-jcryption/">Data Encryption With JavaScript: jCryption</a><br /> jCryption is a jQuery plugin for encrypting POST/GET data submitted by forms.  It uses public-key algorithm of RSA for the encryption &amp; has a PHP file for handling the decryption of data.</p>
<p><a href="http://www.webresourcesdepot.com/data-encryption-with-javascript-jcryption/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-24.jpg" alt="Javascript-techniques-24 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://trif3cta.com/blog/entry/jquery-plugins-under-4k/">Minimalist jQuery: 11 useful plugins under 4K</a><br /> jQuery makes our lives easier. So much so that itâ€™s tempting to use it  all the time, inadvertently slowing our page load times (cue <a href="http://developer.yahoo.com/yslow/">YSlow</a> and <a href="http://stevesouders.com/hammerhead/">Hammerhead</a>). Combining,  compressing, and delivering scripts at the end of your page helps in the  HTTP request department. On the file size front, below are jQuery  plugins that give solid bang for your performance buck.</p>
<p><a href="http://trif3cta.com/blog/entry/jquery-plugins-under-4k/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-79.jpg" alt="Javascript-techniques-79 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://jscott.me/jquery.undoable.html">Undo/Redo in jQuery</a><br /> An easy-to-use plugin for adding undo/redo capabilities to a jQuery application. It is based loosely on the Objective-C/Cocoa way of doing things.</p>
<p><a href="http://jscott.me/jquery.undoable.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-81.jpg" alt="Javascript-techniques-81 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://code.google.com/p/editease/">editease</a><br /> editEase â€“ jQuery CMS | no fuss, no database, no worries</p>
<p><a href="http://code.google.com/p/editease/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-78.jpg" alt="Javascript-techniques-78 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.jgc.org/blog/2009/10/what-is-jshub.html">jsHub</a><br /> jsHub is a single piece of JavaScript (a â€œtagâ€) that can handle reading different sorts of page information and then send them to many different vendorsâ€™ products. One piece of code to send to Google Analytics, Omniture SiteCatalyst, WebTrends and Mixpanel.  Instead of one piece of JavaScript per vendor, jsHub has a single piece of code (the â€œhubâ€) and plugins that know how to translate into the required wire protocol for each vendor. Vendors only maintain the plugin for their product.</p>
<p><a href="http://www.jgc.org/blog/2009/10/what-is-jshub.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-22.jpg" alt="Javascript-techniques-22 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<h3>Educational JavaScript Resources and Tutorials</h3>
<p><a href="http://justin.harmonize.fm/index.php/2009/09/an-introduction-to-javascripts-this/">Caffeinated Simpleton </a><br /> JavaScript is an amazing little language, but itâ€™s got some quirks that turn a lot of people off. One of those quirks is <code>this</code>, and how itâ€™s not necessarily what you expect it to be. <code>this</code> isnâ€™t that complicated, but there are very few explanations of how it works on the internet. This article is an attempt to explain how <code>this</code> works and how to use it properly.</p>
<p><a href="http://justin.harmonize.fm/index.php/2009/09/an-introduction-to-javascripts-this/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-07.jpg" alt="Javascript-techniques-07 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.smashingmagazine.com/2009/08/01/what-you-need-to-know-about-javascript-scope/">What You Need To Know About JavaScript Scope</a><br /> This article discusses how JavaScript handles scope and how various JavaScript libraries provide methods for dealing with it and how they smooth out a few bumps. Weâ€™ll also look at how you can get back to basics and do some interesting scope wrangling without a library, a useful approach if youâ€™re writing code that needs to stand alone.</p>
<p><a href="http://www.smashingmagazine.com/2009/08/01/what-you-need-to-know-about-javascript-scope/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-25.jpg" alt="Javascript-techniques-25 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://ejohn.org/apps/learn/">Learning Advanced JavaScript</a><br /> A very nice tutorial to learn JavaScript, containing code and discussion from the upcoming book Secrets of the JavaScript Ninja by John Resig.</p>
<p><a href="http://ejohn.org/apps/learn/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-30.jpg" alt="Javascript-techniques-30 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.brucelawson.co.uk/2010/highlight-search-terms-automagically-with-javascript-and-mark/">Highlight search terms automagically with JavaScript and mark</a><br /> Script surrounding the search term(s) with the <code>mark</code> element  rather than a <code>span</code>, although the class <var>searchword</var> is retained in case you want to style these <code>mark</code>s differently from  others. In the CSS, the rule <code>article mark </code>is just added to turn it a gentle shade of pink.</p>
<p><a href="http://net.tutsplus.com/tutorials/javascript-ajax/10-super-helpful-traversing-functions-in-jquery/">10 Really Helpful Traversing Functions in jQuery</a><br /> With jQuery, selecting HTML elements is laughably easy. But at times, we may wish to further refine the selection, which can be a hassle when the HTML structure is complicated. In this tutorial, weâ€™ll explore ten ways that we can refine and extend a set of wrapped elements that we wish to operate upon.</p>
<p><a href="http://net.tutsplus.com/tutorials/javascript-ajax/10-super-helpful-traversing-functions-in-jquery/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-74.jpg" alt="Javascript-techniques-74 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.catswhocode.com/blog/using-keyboard-shortcuts-in-javascript">Using keyboard shortcuts in Javascript</a><br /> If you want to enhance your web app, Javascript keyboards shortcuts is definitely something to consider. In this article, youâ€™ll learn to use JS keyboard shortcuts, with and without the JQuery framework.</p>
<p><a href="http://www.catswhocode.com/blog/using-keyboard-shortcuts-in-javascript"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-29.jpg" alt="Javascript-techniques-29 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://javascript.crockford.com/code.html">Code Conventions for the JavaScript Programming Language</a><br /> This is a set of coding conventions and rules for use in JavaScript programming.</p>
<p><a href="http://javascript.crockford.com/code.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-31.jpg" alt="Javascript-techniques-31 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.myphpetc.com/2009/03/jquery-select-element-cheat-sheet.html">jQuery â€“ Select element cheat sheet</a><br />This cheat sheet helps you to find the index of a selected option, set the selected option by value, set the selected option by text, insert a new option before or after another and get the text or value of the selected option.</p>
<p><a href="http://www.myphpetc.com/2009/03/jquery-select-element-cheat-sheet.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-76.jpg" alt="Javascript-techniques-76 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.ibm.com/developerworks/web/library/wa-jsframeworks/index.html">Compare JavaScript frameworks</a><br /> Modern Web sites and Web applications tend to rely quite heavily on client-side JavaScript to provide rich interactivity, particularly through the advent of asynchronous HTTP requests that do not require page refreshes to return data or responses from a server-side script or database system. In this article, you will discover how JavaScript frameworks make it easier and faster to create highly interactive and responsive Web sites and Web applications.</p>
<p><a href="http://www.ibm.com/developerworks/web/library/wa-jsframeworks/index.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-77.jpg" alt="Javascript-techniques-77 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://dailyjs.com/2010/01/27/pro-practices-1/"> Park your Horse, Code Cowboy: Professional JavaScript Workflows, Part 1</a><br /> In this series, weâ€™ll talk about tools &amp; techniques you can use to cover those Noâ€™s, and cut a lot of strife &amp; embarrassment from your JavaScript experience.</p>
<p><a href="http://dailyjs.com/2010/01/27/pro-practices-1/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-47.jpg" alt="Javascript-techniques-47 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.java2s.com/Code/JavaScriptReference/CatalogJavaScriptReference.htm">JavaScript Reference examples (example source code)</a><br /> JavaScript Reference examples, organized by Objects, Properties, Methods &amp; Collections. Some Event Handlers Reference are also available.</p>
<p><a href="http://www.java2s.com/Code/JavaScriptReference/CatalogJavaScriptReference.htm"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-20.jpg" alt="Javascript-techniques-20 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://dev.opera.com/articles/view/javascript-best-practices/">JavaScript best practices</a><br /> A compilation of best practices and good advice Iâ€™ve amassed over the years, much of it learnt the hard way (experimentation and suchlike). Take the advice below to heart and keep it in a part of your brain that has a quick access route so you can apply it without thinking about it. I am sure you will find things to disagree with, and that is a good thing â€“ you should question what you read, and strive to find better solutions. However, I have found that following these principles has made me a more effective developer and allowed other developers to build upon my work more easily.</p>
<p><a href="http://dev.opera.com/articles/view/javascript-best-practices/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-15.jpg" alt="Javascript-techniques-15 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://wtfjs.com/">wtfjs</a><br /> JavaScript is a language we love despite it giving us so much to hate. This is a collection of those very special irregularities, inconstancies and just plain painfully unintuitive moments for the language of the web.</p>
<p><a href="http://wtfjs.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-41.jpg" alt="Javascript-techniques-41 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<h3>Related Posts</h3>
<p>You may be interested in the following related posts:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2009/06/21/50-fresh-javascript-tools-that-will-improve-your-workflow/">50 Fresh JavaScript Tools That Will Improve Your Workflow</a></li>
<li><a href="http://www.smashingmagazine.com/2010/01/12/45-powerful-css-javascript-techniques/">45 Powerful CSS/JavaScript-Techniques</a></li>
<li><a href="http://www.smashingmagazine.com/2009/03/08/70-new-useful-ajax-and-javascript-techniques/">70 Useful AJAX And JavaScript Techniques</a></li>
</ul>
<h3>Poll</h3>
<p> <a href="http://answers.polldaddy.com/poll/2842024/">What programming language should we cover in next round-up?</a><span style="font-size:9px"><a href="http://www.polldaddy.com">surveys</a></span> </p>
<hr />
<p><small>Â© Smashing Editorial for <a href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2010. | <a href="http://www.smashingmagazine.com/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/">Permalink</a> | <a href="http://www.smashingmagazine.com/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/#comments">63 comments</a> | <a title="Bookmark in del.icio.us" href="http://del.icio.us/post?url=http://www.smashingmagazine.com/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/&amp;title=45%20Fresh%20Useful%20JavaScript%20and%20jQuery%20Techniques%20and%20Tools">Add to del.icio.us</a> | <a title="Bookmark in Digg" href="http://digg.com/submit?phase=2&amp;url=http://www.smashingmagazine.com/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/">Digg this</a> | <a title="Stumble on StumbleUpon" href="http://www.stumbleupon.com/submit?url=http://www.smashingmagazine.com/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/">Stumble on StumbleUpon!</a> | <a title="Tweet us!" href="http://twitter.com/home?status=@tweetmeme%20@smashingmag%20Reading%20&#39;45%20Fresh%20Useful%20JavaScript%20and%20jQuery%20Techniques%20and%20Tools&#39;%20http://www.smashingmagazine.com/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/">Tweet it!</a> | <a title="Bookmark in Reddit" href="http://reddit.com/submit?url=http://www.smashingmagazine.com/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/">Submit to Reddit</a> | <a href="http://forum.smashingmagazine.com/">Forum Smashing Magazine</a><br /> Post tags: <a href="http://www.smashingmagazine.com/tag/ajax/" rel="tag">AJAX</a>, <a href="http://www.smashingmagazine.com/tag/javascript/" rel="tag">javascript</a>, <a href="http://www.smashingmagazine.com/tag/jquery/" rel="tag">jquery</a><br /> </small></p>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>50 Fresh JavaScript Tools That Will Improve Your Workflow</title>
		<link>http://www.glennmarcus.com/blog/2009/06/21/50-fresh-javascript-tools-that-will-improve-your-workflow/</link>
		<comments>http://www.glennmarcus.com/blog/2009/06/21/50-fresh-javascript-tools-that-will-improve-your-workflow/#comments</comments>
		<pubDate>Mon, 22 Jun 2009 03:22:22 +0000</pubDate>
		<dc:creator>Smashing Editorial</dc:creator>
				<category><![CDATA[ajax]]></category>
		<category><![CDATA[web20]]></category>
		<category><![CDATA[Developer's Toolbox]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[useful]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/6022c2608b73a2b7</guid>
		<description><![CDATA[<table width="450">
<tr>
<td width="450">
<div style="width:450px">
     <img src="http://creatives.commindo-media.de/static/smashing-magazine-advertisement.gif" alt="" border="0"/><br />
     <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=56"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=56" border="0" alt=""/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=63"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=63" border="0" alt=""/></a>
   </div>
</td>
</tr>
</table>
<p> <strong>JavaScript</strong> is an  integral part of the RIA revolution. JavaScript allows developers to create  rich and interactive web interfaces and establish asynchronous communication  with servers for constantly up-to-date data without a page refresh.</p>
<p>Many things that were once accomplished using Flash objects  can now be built using JavaScript &#8211; with the added benefit that it is free,  typically more web and mobile accessible under most circumstances using best  practices for development techniques, and without the need to use proprietary  software for development.</p>
<p>Though JavaScript has been around for a while, new tools,  techniques, and information are constantly being pumped out to continually push  the technology into greater heights. In this article, we wish to share with you a <strong>huge list of fresh and new tools and  resources</strong> that JavaScript developers will find useful and informative.</p>
<p>Here are a few other posts that you might find interesting:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2009/02/08/50-extremely-useful-javascript-tools/">50  Useful JavaScript Tools</a></li>
<li><a href="http://www.smashingmagazine.com/2009/03/02/40-stand-alone-javascript-libraries-for-specific-purposes/">40  Useful JavaScript Libraries</a></li>
<li><a href="http://www.smashingmagazine.com/2008/09/16/jquery-examples-and-best-practices/">jQuery  and JavaScript Coding</a></li>
</ul>
<h3>Useful JavaScript Tools</h3>
<p><a href="http://ejohn.org/blog/fireunit/">FireUnit</a><br />
Unit testing is an integral part of building high-performance  and efficient web applications. John Resig (creator of jQuery library) and Jan  Odvarko have developed an excellent Firefox/Firebug extension called FireUnit  which gives developers logging and testing capabilities via a simple JavaScript  API. For those interested in the tool, you should also read Odvarkoâ€™s post  detailing the <a href="http://www.softwareishard.com/blog/firebug/fireunit-testing-in-the-firebug-world/">usage  of FireUnit</a>.</p>
<p><a href="http://ejohn.org/blog/fireunit/"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/fireunit.jpg" alt="FireUnit" width="431" height="462"/></a></p>
<p><a href="http://sugartest.scriptia.net/">Sugar Test</a><br />
SugarTest makes it easy to write elegant and understandable JavaScript tests. Its API is inspired by both RSpec, Shoulda and jQuery. It works as a DSL running on top of JsUnitTest.</p>
<p><a href="http://sugartest.scriptia.net/"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/sugar.gif" alt="Screenshot" width="482" height="237"/></a></p>
<p><a href="http://jsclass.jcoglan.com/">JS.Class: Ruby-style JavaScript</a><br />
JS.Class is a library designed to facilitate object-oriented&#8230;</p>]]></description>
			<content:encoded><![CDATA[<table width="450">
<tr>
<td width="450">
<div style="width:450px">
     <img src="http://creatives.commindo-media.de/static/smashing-magazine-advertisement.gif" alt="" border="0"/><br />
     <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=56"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=56" border="0" alt=""/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=63"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=63" border="0" alt=""/></a>
   </div>
</td>
</tr>
</table>
<p> <strong>JavaScript</strong> is an  integral part of the RIA revolution. JavaScript allows developers to create  rich and interactive web interfaces and establish asynchronous communication  with servers for constantly up-to-date data without a page refresh.</p>
<p>Many things that were once accomplished using Flash objects  can now be built using JavaScript &#8211; with the added benefit that it is free,  typically more web and mobile accessible under most circumstances using best  practices for development techniques, and without the need to use proprietary  software for development.</p>
<p>Though JavaScript has been around for a while, new tools,  techniques, and information are constantly being pumped out to continually push  the technology into greater heights. In this article, we wish to share with you a <strong>huge list of fresh and new tools and  resources</strong> that JavaScript developers will find useful and informative.</p>
<p>Here are a few other posts that you might find interesting:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2009/02/08/50-extremely-useful-javascript-tools/">50  Useful JavaScript Tools</a></li>
<li><a href="http://www.smashingmagazine.com/2009/03/02/40-stand-alone-javascript-libraries-for-specific-purposes/">40  Useful JavaScript Libraries</a></li>
<li><a href="http://www.smashingmagazine.com/2008/09/16/jquery-examples-and-best-practices/">jQuery  and JavaScript Coding</a></li>
</ul>
<h3>Useful JavaScript Tools</h3>
<p><a href="http://ejohn.org/blog/fireunit/">FireUnit</a><br />
Unit testing is an integral part of building high-performance  and efficient web applications. John Resig (creator of jQuery library) and Jan  Odvarko have developed an excellent Firefox/Firebug extension called FireUnit  which gives developers logging and testing capabilities via a simple JavaScript  API. For those interested in the tool, you should also read Odvarkoâ€™s post  detailing the <a href="http://www.softwareishard.com/blog/firebug/fireunit-testing-in-the-firebug-world/">usage  of FireUnit</a>.</p>
<p><a href="http://ejohn.org/blog/fireunit/"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/fireunit.jpg" alt="FireUnit" width="431" height="462"/></a></p>
<p><a href="http://sugartest.scriptia.net/">Sugar Test</a><br />
SugarTest makes it easy to write elegant and understandable JavaScript tests. Its API is inspired by both RSpec, Shoulda and jQuery. It works as a DSL running on top of JsUnitTest.</p>
<p><a href="http://sugartest.scriptia.net/"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/sugar.gif" alt="Screenshot" width="482" height="237"/></a></p>
<p><a href="http://jsclass.jcoglan.com/">JS.Class: Ruby-style JavaScript</a><br />
JS.Class is a library designed to facilitate object-oriented development in JavaScript. It implements Rubyâ€™s core object, module and class system and some of its metaprogramming facilities, giving you a powerful base to build well-structured OO programs.</p>
<p><a href="http://jsclass.jcoglan.com/"><img src="http://media1.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/ruby.jpg" alt="Screenshot" width="482" height="237"/></a></p>
<p><a href="http://jsonformatter.curiousconcept.com/">JSON Formatter and Validator</a><br />
The JSON Formatter was created to help with debugging. As data expressed as JSON is often written without line breaks to save space, it became extremely difficult to actually read it. This tool hopes to solve the problem by formatting the JSON into data that is easily readable by human beings.</p>
<p><a href="http://icant.co.uk/sandbox/fauxconsole/">Faux Console: Simulating a Firebug, Safari or Opera debugging in IE</a><br />
Browsers like Safari, Opera and Firefox use the Firebug extension that offers a developer a comfortable way to output debugging information using the console.log() command. Microsoft Internet Explorer does not support this though â€“ Faux Console is a small JavaScript that you can embed in the document to have a basic debugging console in IE.</p>
<p><a href="http://jsbin.com/">JS Bin</a><br />
JS Bin is a web application for testing and debugging  JavaScript and CSS collaboratively. You input your source code and save it to a  publicly-accessible URL which you can then share to your fellow developers or  in social networking outlets like Twitter or Facebook groups. Be sure to check out  the <a href="http://jsbin.com/about#video">video introduction</a> to see JS Bin  in action.</p>
<p><a href="http://jsbin.com/"><img src="http://media1.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/js-bin.jpg" alt="JS Bin" width="480" height="209"/></a></p>
<p><a href="http://phpjs.org/">PHP.JS</a><br />
PHP.JS is an open source project in which we try to port PHP functions to JavaScript. By including the PHP.JS library in your own projects, you can use your favorite PHP functions client-side.</p>
<p><a href="http://code.google.com/speed/page-speed/">Page  Speed</a><br />
Page Speed, released by Google, is a Firefox/Firebug  extension very similar to <a href="http://developer.yahoo.com/yslow/">YSlow</a> that evaluates your web pages for performance. Read more about <a href="http://code.google.com/speed/page-speed/index.html">Page Speed</a> best  practices to see what aspects of a web page are being evaluated. YSlow and Page  Speed are based off <a href="http://stevesouders.com/">Steve Souderâ€™s work</a> (who worked for Yahoo! and now works for Google).</p>
<p><a href="http://code.google.com/speed/page-speed/"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/pagespeed.jpg" alt="Page Speed" width="480" height="235"/></a></p>
<p><a href="http://james.padolsey.com/javascript/prettyprint-for-javascript/">prettyPrint</a><br />
prettyPrint is an in-browser JavaScript utility for dumping  variable information, inspired by ColdFusionâ€™s built-in <a href="http://www.petefreitag.com/images/blog/jsdump.gif">cfdump</a> utility  function. Using prettyPrint on JS objects, variables, and arrays will give you  a large array of information about them, which you can then use for debugging  purposes or simply for gathering data about them for documentation.</p>
<p><a href="http://james.padolsey.com/javascript/prettyprint-for-javascript/"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/prettyprint.jpg" alt="prettyPrint" width="480" height="161"/></a></p>
<p><a href="http://www.spket.com/">Spket IDE</a><br />
Spket is an excellent toolkit for JavaScript and XML  development. It has a robust and intuitive GUI, and integrates with popular and  powerful JavaScript/Ajax libraries such as Y!UI and jQuery. Its <a href="http://www.spket.com/javascript-formatter.html">JavaScript Formatter</a> feature  gives you unparalleled control and standardization for you or your teamâ€™s  JavaScript code formatting standards.</p>
<p><a href="http://www.spket.com/"><img src="http://media1.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/spket.jpg" alt="Spket IDE" width="480" height="208"/></a></p>
<p><a href="http://robertnyman.com/obtrusive-javascript-checker/">Obtrusive  JavaScript Checker</a><br />
Obtrusive JavaScript Checker, created by Robert Nyman, is a  tool for finding inline JavaScript on web pages. It highlights elements that  have inline JavaScript properties and provides a summary report when you mouse  over them. The tool is available as a <a href="https://addons.mozilla.org/en-US/firefox/addon/9505">Firefox extension</a> or a <a href="http://code.google.com/p/obtrusivejavascriptchecker/downloads/detail?name=ObtrusiveJavaScriptChecker-0.8.user.js&amp;can=2">Greasemonkey  script</a>.</p>
<p><a href="http://softwaremaniacs.org/soft/highlight/en/">Highlight.js</a><br />
Highlight.js highlights syntax in code examples on blogs, forums and other web pages. The tool works automatically: it finds blocks of code, detects a language and highlights it accordingly.</p>
<p><a href="http://softwaremaniacs.org/soft/highlight/en/"><img src="http://media1.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/high.gif" alt="Screenshot" width="482" height="237"/></a></p>
<p><a href="http://javascriptcompressor.com/">Javascript Compressor</a><br />
Javascript Compressor is a web-based tool for compressing  your JavaScript to reduce their file sizes. It works by removing unnecessary  characters (such as extra tabs and spaces). Developers who use the tool to  compress their code can also use the decoding feature to uncompress their  source code. It also obfuscates your code, making it harder to read &#8211; which can  be desirable if you want to delay prying eyes from analyzing your  publicly-available code base.</p>
<p><a href="http://javascriptcompressor.com/"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/javascript-compressor.jpg" alt="Javascript Compressor" width="480" height="307"/></a></p>
<p><a href="http://www.incaseofstairs.com/firediff/">Firediff</a><br />
Firediff is a Firefox/Firebug extension that allows you to  track changes in the DOM and CSS. By logging these changes, you can gain  information about how web applications work, and what elements (and what  properties) are being altered by way of DOM manipulation.</p>
<p><a href="http://www.incaseofstairs.com/firediff/"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/firediff.jpg" alt="Firediff" width="452" height="245"/></a></p>
<p><a href="http://rockstarapps.com/joomla-1.5.8/products/razor-web-profiler/overview.html">RockStar  Web Profiler</a><br />
RockStar Web Profiler (aka Razor) logs and profiles  information about client-side performance. It provides developers with a  console for analyzing the data gathered by the tool. Check out the <a href="http://docs.google.com/Present?docid=acmj49ptxpc7_7dx5qzcf4">RockStar Web  Profiler presentation</a> to get an overview of its many awesome features.</p>
<p><a href="http://userjs.up.seesaa.net/js/bookmarklet.html">bookmarklet  maker</a><br />
This plain and simple web tool allows you to create  JavaScript-based bookmarklets. Usage is simple: simply copy and paste your  source code into it and it will output the processed code in the lower pane.</p>
<p><a href="http://userjs.up.seesaa.net/js/bookmarklet.html"><img src="http://media1.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/bookmarlet-maker.jpg" alt="bookmarklet maker" width="480" height="201"/></a></p>
<p><a href="http://tinyjs.com/">Tiny JS</a><br />
Tiny JS is an online directory of small but powerful plugins  for popular JavaScript/Ajax libraries (MooTools, jQuery, and YUI at the moment).  Its aim is to hunt down and feature lightweight plugins that give you a lot of  bang for the buck.</p>
<p><a href="http://tinyjs.com/"><img src="http://media1.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/tiny-js.jpg" alt="Tiny JS" width="480" height="299"/></a></p>
<p><a href="http://www.jscharts.com/home">JSCharts</a><br />
JS Charts is a free JavaScript based chart generator that requires little or no coding. With JS Charts drawing charts is a simple and easy task, since you only have to use client-side scripting (i.e. performed by your web browser). No additional plugins or server modules are required. Itâ€™s enough to include the scripts, prepare your chart data in XML or JavaScript Array and your chart is ready.</p>
<p><a href="http://visitmix.com/lab/glimmer">Glimmer</a><br />
Glimmer is an interactive design tool for incorporating  slick JavaScript-based animation effects using the jQuery library. Glimmer  comes with a wizard-style user interface which can reduce the amount of coding  that you have to write manually.</p>
<p><a href="http://visitmix.com/lab/glimmer"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/glimmer.jpg" alt="Glimmer" width="480" height="272"/></a></p>
<p><a href="http://jania.pe.kr/aw/moin.cgi/JSSpec">JSSPec</a><br />
A testing environment for JavaScript that runs on IE 6+, Firefox 2+ and Safari 3+. The tool shows differences between expected value and actual value, displays the failed line exactly and supports conditional execution. Released under GNU and available for <a href="http://code.google.com/p/jsspec/downloads/list">free download</a>.</p>
<p><a href="http://www.coderun.com/Search/?q=Ajax">CodeRun Code  Search</a><br />
CodeRunâ€™s Code Search tool lets you search and view  user-submitted Ajax,  PHP, and .NET source code. Once youâ€™ve found a script or project that youâ€™re  interested in, you can edit it via their <a href="http://www.coderun.com/ide/">web-based  IDE</a> without having to download the project locally.</p>
<p><a href="http://iphoneized.com/2009/04/basejs-mobile-safari-javascript-framework/">BaseJS: A Mobile (Safari) Javascript Framework</a><br />
a simple, lightweight framework created specifically for Mobile Safari (perfect for iPhone development).</p>
<p><a href="http://www.coderun.com/Search/?q=Ajax"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/coderun.jpg" alt="CodeRun Code Search" width="480" height="299"/></a></p>
<p><a href="http://mochaui.com/">MochaUI</a><br />
MochaUI is a web-based tool for building web application interfaces  built on top of the MooTools JavaScript framework. Jump right in by taking  MochaUI for a spin in their <a href="http://mochaui.com/demo/">demo page</a>.</p>
<p><a href="http://mochaui.com/"><img src="http://media1.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/mochaui.jpg" alt="MochaUI" width="480" height="342"/></a></p>
<h3>Utility Libraries and Components for JavaScript</h3>
<p><a href="http://narwhaljs.org/">narwhal</a><br />
narwhal is a server-side JavaScript library following the <a href="https://wiki.mozilla.org/ServerJS">ServerJS</a> standard. Developers can  create and share â€œpackagesâ€ for website widgets, site features,  programming patterns, in a similar fashion as <a href="http://pear.php.net/">PEAR</a> for PHP.</p>
<p><a href="http://www.uploadify.com/">uploadify</a><br />
uploadify is a useful jQuery plugin for dealing with file  uploads. Itâ€™s powered by a simple PHP script for handling the server-side <em>stuff</em>. Be sure to check out the <a href="http://www.uploadify.com/demo/">uploadify demos</a> to see the plugin in  action.</p>
<p><a href="http://www.gscottolson.com/blackbirdjs/">Blackbird</a><br />
Blackbird lets you log messages in JavaScript using a simple  and intuitive JS-based API. The library also provides you with an attractive  console GUI for viewing and analyzing messages. No more annoying alert()  functions to see your objectsâ€™ contents (which can be frustrating for printing  out array values) and for setting breakpoints.</p>
<p><a href="http://www.gscottolson.com/blackbirdjs/"><img src="http://media1.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/blackbird.jpg" alt="Blackbird" width="480" height="188"/></a></p>
<p><a href="http://www.digitalhymn.com/argilla/booklaylet/">Booklaylet</a><br />
Booklaylet is a JS library for letting you easily deploy  your <a href="http://en.wikipedia.org/wiki/Bookmarklet">bookmarklet</a> applications. The implementation is dead simple: take the Booklaylet source and  modify it to point to your appâ€™s URL.</p>
<p><a href="http://javascriptools.sourceforge.net/">JavaScripTools</a><br />
JavaScipTools is a collection of useful JS components,  functions, and classes with the aim of addressing some of the more common web  developer tasks such as parsing and formatting of data types (i.e. date and  time). It also comes with a dynamic table function for creating sortable HTML  tables.</p>
<p><a href="http://www.lamberta.org/blog/doodle/">Doodle.js</a><br />
HTML 5â€™s <a href="http://www.whatwg.org/specs/web-apps/current-work/#the-canvas-element">Canvas</a> element gives developers a way to draw stuff on web pages programmatically.  Doodle.js is a utility library/framework for working with more complex and  robust Canvas drawing processes. Check out <a href="http://www.lamberta.org/demo/js/doodle/examples/01/spiral.html">Spiral Pattern</a> demo and the <a href="http://www.lamberta.org/demo/js/doodle/examples/01/rotate.html">Marbles in Space</a> (3D simulation) demo in a browser that  already supports Canvas to get a feel for how Doodle.js works.</p>
<p><a href="http://www.lamberta.org/blog/doodle/"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/doodle-js.jpg" alt="Doodle.js" width="480" height="241"/></a></p>
<p><a href="http://digitalhymn.com/argilla/liteajax/">liteAJaX</a><br />
liteAJaX is a lightweight JavaScript class for working with AJAX. This library is  perfect for projects that donâ€™t use a JavaScript/Ajax framework or projects  that donâ€™t need a more robust and fully-featured framework.</p>
<p><a href="http://hyper-metrix.com/#Burst">Burst</a><br />
Burst is a vector animation engine for HTML 5â€™s Canvas  element. With it, you can create smooth, Flash-like animation effects for  browsers that support Canvas.</p>
<p><a href="http://hyper-metrix.com/#Burst"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/burst.jpg" alt="Burst" width="480" height="235"/></a></p>
<p><a href="http://code.google.com/p/js-test-driver/">JSTestDriver</a><br />
JSTestDriver is a Java-based framework for creating unit  test following <a href="http://en.wikipedia.org/wiki/Test-driven_development">Test-Driven  Development</a> philosophies and best practices. Be sure to check out this <a href="http://www.youtube.com/watch?v=V4wYrR6t5gE&amp;eurl=http%3A%2F%2Fwww%2Egmodules%2Ecom%2Fgadgets%2Fifr%3Furl%3Dhttp%253A%252F%252Fgoogle%2Dcode%2Dproject%2Dhosting%2Dgadgets%2Egooglecode%2Ecom%252Fsvn%252Fbuild%252Fprod%252Fv&amp;feature=player_embedded">video  demonstration of JSTestDriver in action</a>.</p>
<p><a href="http://code.google.com/p/jspdf/">jsPDF</a><br />
This library allows you to create PDFâ€™s using nothing else  but JavaScript. See <a href="http://jspdf.googlecode.com/svn/trunk/examples/basic.htm">the jsPDF demo  page</a> to see the library in action.</p>
<h3>Useful JavaScript Libraries</h3>
<p><a href="http://www.glassbox-js.com/">GlassBox</a><br />
GlassBox is a beautiful and refreshing take on modal windows  that creates an interesting feeling of transparency as if you were looking  through a glass. Check out the <a href="http://www.glassbox-js.com/#examples">example  page</a> to see different types of GlassBox implementations.</p>
<p><a href="http://www.glassbox-js.com/"><img src="http://media1.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/glassbox.jpg" alt="GlassBox" width="480" height="259"/></a></p>
<p><a href="http://flowplayer.org/tools/index.html">jQuery TOOLS</a><br />
jQuery TOOLS is a toolbox that gives developers some of the  most popular UI design patterns at their disposal in an easy-to-use manner.  View some of the things you can do with jQuery TOOLS in the projectâ€™s <a href="http://flowplayer.org/tools/demos/index.html">demo page</a>.</p>
<p><a href="http://flowplayer.org/tools/index.html"><img src="http://media1.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/jquery-tools.jpg" alt="jQuery TOOLS" width="480" height="145"/></a></p>
<p><a href="http://neofreeman.freepgs.com/Moousture/">Moousture</a><br />
Moosture is a JavaScript library for dealing with mouse  gestures, written on top of the MooTools framework.</p>
<p><a href="http://cssglobe.com/lab/tablecloth/">Tablecloth</a><br />
Tablecloth is a lightweight and unobtrusive JavaScript  library for styling and adding dynamic user interaction to HTML tables.</p>
<p><a href="http://cssglobe.com/lab/tablecloth/"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/tablecloth.jpg" alt="Tablecloth" width="480" height="235"/></a></p>
<p><a href="http://www.frequency-decoder.com/2007/11/15/unobtrusive-table-actions-script">Unobtrusive  Table Actions Script</a><br />
This simple and lightweight library brings together a set of  common and useful functions for dealing with HTML tables, such as  zebra-striping rows, highlighting rows on mouse over, and column highlighting.</p>
<p><a href="http://livepipe.net/">LivePipe</a><br />
LivePipe is a set of widgets and controls for adding common  user interaction components to web applications using the Prototype JavaScript  framework.</p>
<p><a href="http://livepipe.net/"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/livepipe.jpg" alt="LivePipe" width="480" height="235"/></a></p>
<p><a href="http://www.greywyvern.com/code/javascript/keyboard">JavaScript Graphical  / Virtual Keyboard Interface</a><br />
This JavaScript package adds a  virtual keyboard interface into web pages.</p>
<p><a href="http://www.greywyvern.com/code/javascript/keyboard"><img src="http://media1.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/javascript-graphical-virtual-keyboard.jpg" alt="JavaScript Graphical / Virtual Keyboard Interface" width="480" height="193"/></a></p>
<p><a href="http://digitalhymn.com/argilla/tipmage/">Tipmage</a><br />
Tipmage is a JavaScript class for handling tooltips and  annotations on images, similar to annotated images on Flickr.</p>
<p><a href="http://digitalhymn.com/argilla/tipmage/"><img src="http://media1.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/tipmage.jpg" alt="Tipmage" width="402" height="245"/></a></p>
<p><a href="http://qgallery.quadrifolia.de/">qGallery</a><br />
qGallery is a simple but beautiful JavaScript for creating  image galleries with smooth and slick animation effects.</p>
<p><a href="http://qgallery.quadrifolia.de/"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/qgallery.jpg" alt="qGallery" width="402" height="245"/></a></p>
<h3>Educational JavaScript Resources and Tutorials</h3>
<p><a href="http://www.athenz.com/app/decision/center/ajax">Ajax  Frameworks Decision Center</a><br />
For large companies, committing to a JavaScript/Ajax  framework such as Prototype, MooTools, or jQuery is a big decision because it  affects a large amount of employees and will dictate the direction of the companyâ€™s  client-side interaction and RIA development philosophies. Using the Ajax Frameworks   Decision Center  gives you an organized, quantitative, and thorough method for making a solid  decision.</p>
<p><a href="http://www.athenz.com/app/decision/center/ajax"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/ajax-decision-center.jpg" alt="Ajax Frameworks Decision Center" width="480" height="241"/></a></p>
<p><a href="http://jqueryvsmootools.com/">jQuery vs MooTools</a><br />
This single-page site by MooTools Dev Team member Aaron  Newton is a comparative look into jQuery versus MooTools.</p>
<p><a href="http://raibledesigns.com/rd/entry/ajax_framework_analysis_results">Ajax  Framework Analysis Results</a><br />
This analysis of popular JavaScript/Ajax frameworks (Dojo,  Ext JS, GWT, YUI) is a great resource for gathering research data for your own  frameworks: the analysis matrix factors in criteria such as scalability,  extensibility, quality and quantity of documentation, and much more. You can  adapt this matrix, tweak their weights, and modify criterions to help you  decide which JS framework to go with.</p>
<p><a href="http://raibledesigns.com/rd/entry/ajax_framework_analysis_results"><img src="http://media1.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/ajax-frameworks-analysis-results.jpg" alt="Ajax Framework Analysis Results" width="402" height="245"/></a></p>
<p><a href="http://www.noupe.com/tutorial/drop-down-menu-jquery-css.html">Sexy Drop  Down Menu w/ jQuery &amp; CSS</a><br />
In this tutorial, youâ€™ll learn how to create a multi-tiered  drop down menu with the use of the jQuery library.</p>
<p><a href="http://www.noupe.com/tutorial/drop-down-menu-jquery-css.html"><img src="http://media1.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/sexy-dropdown.jpg" alt="Sexy Drop Down Menu w/ jQuery &amp; CSS" width="480" height="235"/></a></p>
<p><a href="http://designm.ag/tutorials/jquery-display-switch/">Easy  Display Switch with CSS and jQuery</a><br />
This tutorial outlines a method for using jQuery to  smoothly-transition into different viewing modes, which can be helpful in image  galleries.</p>
<p><a href="http://designm.ag/tutorials/jquery-display-switch/"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/display-switch-tutorial.jpg" alt="Easy Display Switch with CSS and jQuery" width="480" height="235"/></a></p>
<p><a href="http://sixrevisions.com/tutorials/javascript_tutorial/create-a-slick-and-accessible-slideshow-using-jquery/">Create  a Slick and Accessible Slideshow Using jQuery</a><br />
This is a step-by-step jQuery tutorial that I wrote for  creating a simple and slick slideshow that can be adapted to display different  content types. Check out the <a href="http://sixrevisions.com/demo/slideshow/final.html">demo page</a> to see  the slideshow in action.</p>
<p><a href="http://sixrevisions.com/tutorials/javascript_tutorial/create-a-slick-and-accessible-slideshow-using-jquery/"><img src="http://media2.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/accessible-jquery-slideshow.jpg" alt="Create a Slick and Accessible Slideshow Using jQuery" width="480" height="315"/></a></p>
<p><a href="http://ejohn.org/apps/learn/">Learning Advanced  JavaScript</a><br />
John Resig has a slideshow-style, web-based tutorial on  advanced JavaScript development. It is a wonderful stepping-stone for  JavaScript developers ready to make the leap into RIA development using  JavaScript.</p>
<p><a href="http://ejohn.org/apps/learn/"><img src="http://media1.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/learning-advanced-javascript.jpg" alt="Learning Advanced JavaScript" width="402" height="245"/></a></p>
<p><a href="http://robertnyman.com/javascript/">JavaScript  tests &amp; Compatibility tables</a><br />
This resource is a well-organized cheatsheet for JavaScript  methods cross-browser compatibility backed by sample tests that you can run to  see how they work (or donâ€™t work) in your browser.</p>
<p><a href="http://robertnyman.com/javascript/"><img src="http://media1.smashingmagazine.com/wp-content/uploads/images/js-50-useful-tools/javascript-tests-compatibility-tables.jpg" alt="JavaScript tests &amp; Compatibility tables" width="402" height="245"/></a></p>
<p><a href="http://javascript.crockford.com/code.html">Code  Conventions for the JavaScript</a><br />
On this page, you can find suggested coding conventions  for JavaScript. It is important to note that there is no one correct  convention, but this is a great place to start developing your own.</p>
<h4>About the Author</h4>
<p><em>Jacob Gube is a bilingual web developer (JavaScript and  PHP), web designer, author, and the Founder/Chief Editor of <a href="http://sixrevisions.com/">Six Revisions</a>: an online publication that  shares useful development and design resources and tutorials for web  professionals. If you would like to contact him, send him a tweet and <a href="http://twitter.com/jggube">follow him on Twitter</a>.</em></p>
<hr />
<p><small>Â© Smashing Editorial for <a href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2009. |<br />
<a href="http://www.smashingmagazine.com/2009/06/21/50-fresh-javascript-tools-that-will-improve-your-workflow/">Permalink</a> |<br />
<a href="http://www.smashingmagazine.com/2009/06/21/50-fresh-javascript-tools-that-will-improve-your-workflow/#comments">47 comments</a> |<br />
<a title="Bookmark in del.icio.us" href="http://del.icio.us/post?url=http://www.smashingmagazine.com/2009/06/21/50-fresh-javascript-tools-that-will-improve-your-workflow/&amp;title=50%20Fresh%20JavaScript%20Tools%20That%20Will%20Improve%20Your%20Workflow">Add to del.icio.us</a> | <a title="Bookmark in Digg" href="http://digg.com/submit?phase=2&amp;url=http://www.smashingmagazine.com/2009/06/21/50-fresh-javascript-tools-that-will-improve-your-workflow/">Digg this</a> | <a title="Stumble on StumbleUpon" href="http://www.stumbleupon.com/submit?url=http://www.smashingmagazine.com/2009/06/21/50-fresh-javascript-tools-that-will-improve-your-workflow/">Stumble on StumbleUpon!</a> | <a title="Tweet us!" href="http://twitter.com/home?status=@tweetmeme%20@smashingmag%20Reading%20&#39;50%20Fresh%20JavaScript%20Tools%20That%20Will%20Improve%20Your%20Workflow&#39;%20http://www.smashingmagazine.com/2009/06/21/50-fresh-javascript-tools-that-will-improve-your-workflow/">Tweet it!</a> | <a title="Bookmark in Reddit" href="http://reddit.com/submit?url=http://www.smashingmagazine.com/2009/06/21/50-fresh-javascript-tools-that-will-improve-your-workflow/">Submit to Reddit</a> | <a href="http://forum.smashingmagazine.com/">Forum Smashing Magazine</a></p>
<p>
Post tags: <a href="http://www.smashingmagazine.com/tag/ajax/" rel="tag">ajax</a>, <a href="http://www.smashingmagazine.com/tag/jquery/" rel="tag">jquery</a>, <a href="http://www.smashingmagazine.com/tag/js/" rel="tag">js</a>, <a href="http://www.smashingmagazine.com/tag/tools/" rel="tag">tools</a>, <a href="http://www.smashingmagazine.com/tag/useful/" rel="tag">useful</a><br />
</small></p>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2009/06/21/50-fresh-javascript-tools-that-will-improve-your-workflow/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Opens Up Internal Speed Tool To Developers</title>
		<link>http://www.glennmarcus.com/blog/2009/06/04/google-opens-up-internal-speed-tool-to-developers/</link>
		<comments>http://www.glennmarcus.com/blog/2009/06/04/google-opens-up-internal-speed-tool-to-developers/#comments</comments>
		<pubDate>Thu, 04 Jun 2009 22:58:18 +0000</pubDate>
		<dc:creator>Jason Kincaid</dc:creator>
				<category><![CDATA[ajax]]></category>
		<category><![CDATA[Company & Product Profiles]]></category>
		<category><![CDATA[Google]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/18acd43aaa9c59d9</guid>
		<description><![CDATA[<p><img src="http://cache0.techcrunch.com/wp-content/uploads/2009/06/29578v7-max-250x250-1jpg1.jpeg"/>One of the most fundamental reasons for Googleâ€™s success is the siteâ€™s speed â€” search queries typically take a fraction of a second, and most of the companyâ€™s other services are usually very snappy as well (save for Gmail, which occasionally bogs down).  Part of this speed can be attributed to the companyâ€™s obsession with <a href="http://www.techcrunch.com/2008/07/03/google-you-can-eat-my-cookies-anytime/">minimalist design</a> and its vast server farms, but you can be sure thereâ€™s no shortage of optimization thatâ€™s going on to make sure pages load as quickly as possible on the front end, too.</p>
<p>To help streamline its sites, Google has been using an internal tool called Page Speed, and starting today itâ€™s <a href="http://google-code-updates.blogspot.com/2009/06/introducing-page-speed.html">opening up</a> the tool to the developer community.  The newly open-sourced tool is a Firefox plugin that integrates with <a href="http://www.getfirebug.com/">Firebug</a>, making suggestions on how to speed up your site based on best practices.  </p>
<p>From the Google blog post:</p>
<blockquote><p>For example, Page Speed automatically optimizes images for you, giving you a compressed image that you can use immediately on your web site. It also identifies issues such as JavaScript and CSS loaded by your page that wasnâ€™t actually used to display the page, which can help reduce time your users spend waiting for the page to download and display.</p>
</blockquote>
<p>If this sounds familiar, itâ€™s because Yahoo offers a similar tool for Firefox called <a href="http://developer.yahoo.com/yslow/">YSlow</a>, which is also meant to help developers streamline their websites.<br />
<br />
<img src="http://cache0.techcrunch.com/wp-content/uploads/2009/06/page-speed.png"/><br />
<img src="http://cache0.techcrunch.com/wp-content/uploads/2009/06/activity2.png"/><br />
</p>
<p><strong><em>Crunch Network</em></strong>:  <a href="http://www.mobilecrunch.com/">MobileCrunch</a><em> </em>Mobile Gadgets and Applications, Delivered Daily.</p>
<div><a href="http://d.techcrunch.com/ck.php?n=a9e88cf5&#38;cb=845"><img src="http://d.techcrunch.com/avw.php?zoneid=13&#38;n=a9e88cf5" border="0" alt=""/></a></div>
<p></p>
<div>
<a href="http://feeds2.feedburner.com/~ff/Techcrunch?a=rEgCTRmR6iY:BRgc-5skvEk:2mJPEYqXBVI"><img src="http://feeds2.feedburner.com/~ff/Techcrunch?d=2mJPEYqXBVI" border="0"/></a> <a href="http://feeds2.feedburner.com/~ff/Techcrunch?a=rEgCTRmR6iY:BRgc-5skvEk:dnMXMwOfBR0"><img src="http://feeds2.feedburner.com/~ff/Techcrunch?d=dnMXMwOfBR0" border="0"/></a> <a href="http://feeds2.feedburner.com/~ff/Techcrunch?a=rEgCTRmR6iY:BRgc-5skvEk:D7DqB2pKExk"><img src="http://feeds2.feedburner.com/~ff/Techcrunch?i=rEgCTRmR6iY:BRgc-5skvEk:D7DqB2pKExk" border="0"/></a> <a href="http://feeds2.feedburner.com/~ff/Techcrunch?a=rEgCTRmR6iY:BRgc-5skvEk:7Q72WNTAKBA"><img src="http://feeds2.feedburner.com/~ff/Techcrunch?d=7Q72WNTAKBA" border="0"/></a> <a href="http://feeds2.feedburner.com/~ff/Techcrunch?a=rEgCTRmR6iY:BRgc-5skvEk:yIl2AUoC8zA"><img src="http://feeds2.feedburner.com/~ff/Techcrunch?d=yIl2AUoC8zA" border="0"/></a>
</div>
<p><img src="http://feeds2.feedburner.com/~r/Techcrunch/~4/rEgCTRmR6iY" height="1" width="1"/></p>
]]></description>
			<content:encoded><![CDATA[<p><img src="http://cache0.techcrunch.com/wp-content/uploads/2009/06/29578v7-max-250x250-1jpg1.jpeg"/>One of the most fundamental reasons for Googleâ€™s success is the siteâ€™s speed â€” search queries typically take a fraction of a second, and most of the companyâ€™s other services are usually very snappy as well (save for Gmail, which occasionally bogs down).  Part of this speed can be attributed to the companyâ€™s obsession with <a href="http://www.techcrunch.com/2008/07/03/google-you-can-eat-my-cookies-anytime/">minimalist design</a> and its vast server farms, but you can be sure thereâ€™s no shortage of optimization thatâ€™s going on to make sure pages load as quickly as possible on the front end, too.</p>
<p>To help streamline its sites, Google has been using an internal tool called Page Speed, and starting today itâ€™s <a href="http://google-code-updates.blogspot.com/2009/06/introducing-page-speed.html">opening up</a> the tool to the developer community.  The newly open-sourced tool is a Firefox plugin that integrates with <a href="http://www.getfirebug.com/">Firebug</a>, making suggestions on how to speed up your site based on best practices.  </p>
<p>From the Google blog post:</p>
<blockquote><p>For example, Page Speed automatically optimizes images for you, giving you a compressed image that you can use immediately on your web site. It also identifies issues such as JavaScript and CSS loaded by your page that wasnâ€™t actually used to display the page, which can help reduce time your users spend waiting for the page to download and display.</p>
</blockquote>
<p>If this sounds familiar, itâ€™s because Yahoo offers a similar tool for Firefox called <a href="http://developer.yahoo.com/yslow/">YSlow</a>, which is also meant to help developers streamline their websites.<br />
<center><br />
<img src="http://cache0.techcrunch.com/wp-content/uploads/2009/06/page-speed.png"/><br />
<img src="http://cache0.techcrunch.com/wp-content/uploads/2009/06/activity2.png"/><br />
</center></p>
<p><strong><em>Crunch Network</em></strong>:  <a href="http://www.mobilecrunch.com/">MobileCrunch</a><em> </em>Mobile Gadgets and Applications, Delivered Daily.</p>
<div><a href="http://d.techcrunch.com/ck.php?n=a9e88cf5&amp;cb=845"><img src="http://d.techcrunch.com/avw.php?zoneid=13&amp;n=a9e88cf5" border="0" alt=""/></a></div>
<p><iframe src="http://feedads.g.doubleclick.net/~ah/f/v7tfagih50mrtjprksjv4s1ftk/468/60#http%3A%2F%2Fwww.techcrunch.com%2F2009%2F06%2F04%2Fgoogle-opens-up-internal-speed-tool-to-the-public%2F" width="100%" height="60" frameborder="0" scrolling="no" marginwidth="0" marginheight="0"></iframe></p>
<div>
<a href="http://feeds2.feedburner.com/~ff/Techcrunch?a=rEgCTRmR6iY:BRgc-5skvEk:2mJPEYqXBVI"><img src="http://feeds2.feedburner.com/~ff/Techcrunch?d=2mJPEYqXBVI" border="0"/></a> <a href="http://feeds2.feedburner.com/~ff/Techcrunch?a=rEgCTRmR6iY:BRgc-5skvEk:dnMXMwOfBR0"><img src="http://feeds2.feedburner.com/~ff/Techcrunch?d=dnMXMwOfBR0" border="0"/></a> <a href="http://feeds2.feedburner.com/~ff/Techcrunch?a=rEgCTRmR6iY:BRgc-5skvEk:D7DqB2pKExk"><img src="http://feeds2.feedburner.com/~ff/Techcrunch?i=rEgCTRmR6iY:BRgc-5skvEk:D7DqB2pKExk" border="0"/></a> <a href="http://feeds2.feedburner.com/~ff/Techcrunch?a=rEgCTRmR6iY:BRgc-5skvEk:7Q72WNTAKBA"><img src="http://feeds2.feedburner.com/~ff/Techcrunch?d=7Q72WNTAKBA" border="0"/></a> <a href="http://feeds2.feedburner.com/~ff/Techcrunch?a=rEgCTRmR6iY:BRgc-5skvEk:yIl2AUoC8zA"><img src="http://feeds2.feedburner.com/~ff/Techcrunch?d=yIl2AUoC8zA" border="0"/></a>
</div>
<p><img src="http://feeds2.feedburner.com/~r/Techcrunch/~4/rEgCTRmR6iY" height="1" width="1"/></p>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2009/06/04/google-opens-up-internal-speed-tool-to-developers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Great visualizations with Protovis</title>
		<link>http://www.glennmarcus.com/blog/2009/04/06/great-visualizations-with-protovis/</link>
		<comments>http://www.glennmarcus.com/blog/2009/04/06/great-visualizations-with-protovis/#comments</comments>
		<pubDate>Mon, 06 Apr 2009 13:29:20 +0000</pubDate>
		<dc:creator>Dion Almaer</dc:creator>
				<category><![CDATA[ajax]]></category>
		<category><![CDATA[Canvas]]></category>
		<category><![CDATA[Front Page]]></category>
		<category><![CDATA[JavaScript]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/e056c4f71b63c42a</guid>
		<description><![CDATA[<p><img src="http://www.visophyte.org/blog/wp-content/uploads/2009/04/exptoolbar-protovis-gloda-256.png" width="500"/></p>
<p>I have been very impressed with Andrew Sutherland of the Mozilla Messaging team (which is one reason that I have faith that I will dump Gmail for something he and the Messaging team come up with one day ;) and the <a href="http://www.visophyte.org/blog/2009/04/01/thunderbird-gloda-exptoolbar-protovis-paninaro-oh-oh-oh/">visualizations that he is playing with</a> are quite cool indeed. Seeing your email in different ways (not just in a table) can open the eyes.</p>
<p>Andrew is using <a href="http://vis.stanford.edu/protovis/">Protovis</a> &#8220;a visualization toolkit for JavaScript using the canvas element. It takes a graphical approach to data visualization, composing custom views of data with simple graphical primitives like bars and dots. These primitives are called marks, and each mark encodes data visually through dynamic properties such as color and position.&#8221;</p>
<p>There are some cool examples such as:</p>
<div><a href="javascript:void(0);">PLAIN TEXT</a></div>
<div><span style="color:#000000;font-weight:bold">JAVASCRIPT:</span></p>
<div>
<div>
<ol>
<li style="font-family:&#39;Courier New&#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â </div>
</li>
<li style="font-weight:bold;color:#26536A">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal"><span style="color:#003366;font-weight:bold">new</span> pv.<span style="color:#006600">Panel</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#006600;font-weight:bold">)</span>.<span style="color:#006600">width</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#800000">150</span><span style="color:#006600;font-weight:bold">)</span>.<span style="color:#006600">height</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#800000">150</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-family:&#39;Courier New&#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  .<span style="color:#006600">add</span><span style="color:#006600;font-weight:bold">(</span>pv.<span style="color:#006600">Panel</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-weight:bold;color:#26536A">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  .<span style="color:#006600">data</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#006600;font-weight:bold">[</span><span style="color:#006600;font-weight:bold">[</span>Math.<span style="color:#006600">sin</span><span style="color:#006600;font-weight:bold">(</span>x / y<span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-family:&#39;Courier New&#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  Â  Â  Â  Â <span style="color:#000066;font-weight:bold">for</span> <span style="color:#006600;font-weight:bold">(</span>x <span style="color:#000066;font-weight:bold">in</span> pv.<span style="color:#006600">range</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#800000">50</span><span style="color:#006600;font-weight:bold">)</span><span style="color:#006600;font-weight:bold">)</span><span style="color:#006600;font-weight:bold">]</span></div>
</li>
<li style="font-weight:bold;color:#26536A">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  Â  Â  Â  Â <span style="color:#000066;font-weight:bold">for</span> <span style="color:#006600;font-weight:bold">(</span>y <span style="color:#000066;font-weight:bold">in</span> pv.<span style="color:#006600">range</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#800000">3</span>, <span style="color:#800000">9</span><span style="color:#006600;font-weight:bold">)</span><span style="color:#006600;font-weight:bold">)</span><span style="color:#006600;font-weight:bold">]</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-family:&#39;Courier New&#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  .<span style="color:#006600">add</span><span style="color:#006600;font-weight:bold">(</span>pv.<span style="color:#006600">Area</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-weight:bold;color:#26536A">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  .<span style="color:#006600">data</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#003366;font-weight:bold">function</span><span style="color:#006600;font-weight:bold">(</span>d<span style="color:#006600;font-weight:bold">)</span> d<span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-family:&#39;Courier New&#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  .<span style="color:#006600">fillStyle</span><span style="color:#006600;font-weight:bold">(</span>pv.<span style="color:#006600">Colors</span>.<span style="color:#006600">category19</span>.<span style="color:#006600">unique</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-weight:bold;color:#26536A">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  .<span style="color:#006600">bottom</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#003366;font-weight:bold">function</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#006600;font-weight:bold">)</span> let <span style="color:#006600;font-weight:bold">(</span>c = <span style="color:#000066;font-weight:bold">this</span>.<span style="color:#006600">cousin</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#006600;font-weight:bold">)</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-family:&#39;Courier New&#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  Â  Â  c ? <span style="color:#006600;font-weight:bold">(</span>c.<span style="color:#006600">bottom</span> + c.<span style="color:#006600">height</span><span style="color:#006600;font-weight:bold">)</span> : <span style="color:#800000">0</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-weight:bold;color:#26536A">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  .<span style="color:#006600">height</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#003366;font-weight:bold">function</span><span style="color:#006600;font-weight:bold">(</span>d<span style="color:#006600;font-weight:bold">)</span> <span style="color:#006600;font-weight:bold">(</span>d + <span style="color:#800000">1</span><span style="color:#006600;font-weight:bold">)</span> * <span style="color:#800000">13</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-family:&#39;Courier New&#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  .<span style="color:#006600">left</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#003366;font-weight:bold">function</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#006600;font-weight:bold">)</span> <span style="color:#000066;font-weight:bold">this</span>.<span style="color:#006600">index</span> * <span style="color:#800000">3</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-weight:bold;color:#26536A">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  .<span style="color:#006600">root</span>.<span style="color:#006600">render</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#006600;font-weight:bold">)</span>;</div>
</li>
<li style="font-family:&#39;Courier New&#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â </div>
</li>
</ol>
</div>
</div>
</div>
<p>which produces <img src="http://vis.stanford.edu/protovis/ex/area-chart.png"/>.</p>
<p>Very cool indeed!</p>
<div>
<a href="http://feeds2.feedburner.com/~ff/ajaxian?a=PiPgb8gSSNE:V6GfWkreDTo:yIl2AUoC8zA"><img src="http://feeds2.feedburner.com/~ff/ajaxian?d=yIl2AUoC8zA" border="0"/></a> <a href="http://feeds2.feedburner.com/~ff/ajaxian?a=PiPgb8gSSNE:V6GfWkreDTo:7Q72WNTAKBA"><img src="http://feeds2.feedburner.com/~ff/ajaxian?d=7Q72WNTAKBA" border="0"/></a> <a href="http://feeds2.feedburner.com/~ff/ajaxian?a=PiPgb8gSSNE:V6GfWkreDTo:D7DqB2pKExk"><img src="http://feeds2.feedburner.com/~ff/ajaxian?i=PiPgb8gSSNE:V6GfWkreDTo:D7DqB2pKExk" border="0"/></a>
</div>
]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.visophyte.org/blog/wp-content/uploads/2009/04/exptoolbar-protovis-gloda-256.png" width="500"/></p>
<p>I have been very impressed with Andrew Sutherland of the Mozilla Messaging team (which is one reason that I have faith that I will dump Gmail for something he and the Messaging team come up with one day ;) and the <a href="http://www.visophyte.org/blog/2009/04/01/thunderbird-gloda-exptoolbar-protovis-paninaro-oh-oh-oh/">visualizations that he is playing with</a> are quite cool indeed. Seeing your email in different ways (not just in a table) can open the eyes.</p>
<p>Andrew is using <a href="http://vis.stanford.edu/protovis/">Protovis</a> &#8220;a visualization toolkit for JavaScript using the canvas element. It takes a graphical approach to data visualization, composing custom views of data with simple graphical primitives like bars and dots. These primitives are called marks, and each mark encodes data visually through dynamic properties such as color and position.&#8221;</p>
<p>There are some cool examples such as:</p>
<div><a href="javascript:void(0);">PLAIN TEXT</a></div>
<div><span style="color:#000000;font-weight:bold">JAVASCRIPT:</span></p>
<div>
<div>
<ol>
<li style="font-family:&#39;Courier New&#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â </div>
</li>
<li style="font-weight:bold;color:#26536A">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal"><span style="color:#003366;font-weight:bold">new</span> pv.<span style="color:#006600">Panel</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#006600;font-weight:bold">)</span>.<span style="color:#006600">width</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#800000">150</span><span style="color:#006600;font-weight:bold">)</span>.<span style="color:#006600">height</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#800000">150</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-family:&#39;Courier New&#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  .<span style="color:#006600">add</span><span style="color:#006600;font-weight:bold">(</span>pv.<span style="color:#006600">Panel</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-weight:bold;color:#26536A">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  .<span style="color:#006600">data</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#006600;font-weight:bold">[</span><span style="color:#006600;font-weight:bold">[</span>Math.<span style="color:#006600">sin</span><span style="color:#006600;font-weight:bold">(</span>x / y<span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-family:&#39;Courier New&#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  Â  Â  Â  Â <span style="color:#000066;font-weight:bold">for</span> <span style="color:#006600;font-weight:bold">(</span>x <span style="color:#000066;font-weight:bold">in</span> pv.<span style="color:#006600">range</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#800000">50</span><span style="color:#006600;font-weight:bold">)</span><span style="color:#006600;font-weight:bold">)</span><span style="color:#006600;font-weight:bold">]</span></div>
</li>
<li style="font-weight:bold;color:#26536A">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  Â  Â  Â  Â <span style="color:#000066;font-weight:bold">for</span> <span style="color:#006600;font-weight:bold">(</span>y <span style="color:#000066;font-weight:bold">in</span> pv.<span style="color:#006600">range</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#800000">3</span>, <span style="color:#800000">9</span><span style="color:#006600;font-weight:bold">)</span><span style="color:#006600;font-weight:bold">)</span><span style="color:#006600;font-weight:bold">]</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-family:&#39;Courier New&#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  .<span style="color:#006600">add</span><span style="color:#006600;font-weight:bold">(</span>pv.<span style="color:#006600">Area</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-weight:bold;color:#26536A">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  .<span style="color:#006600">data</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#003366;font-weight:bold">function</span><span style="color:#006600;font-weight:bold">(</span>d<span style="color:#006600;font-weight:bold">)</span> d<span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-family:&#39;Courier New&#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  .<span style="color:#006600">fillStyle</span><span style="color:#006600;font-weight:bold">(</span>pv.<span style="color:#006600">Colors</span>.<span style="color:#006600">category19</span>.<span style="color:#006600">unique</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-weight:bold;color:#26536A">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  .<span style="color:#006600">bottom</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#003366;font-weight:bold">function</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#006600;font-weight:bold">)</span> let <span style="color:#006600;font-weight:bold">(</span>c = <span style="color:#000066;font-weight:bold">this</span>.<span style="color:#006600">cousin</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#006600;font-weight:bold">)</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-family:&#39;Courier New&#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  Â  Â  c ? <span style="color:#006600;font-weight:bold">(</span>c.<span style="color:#006600">bottom</span> + c.<span style="color:#006600">height</span><span style="color:#006600;font-weight:bold">)</span> : <span style="color:#800000">0</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-weight:bold;color:#26536A">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  .<span style="color:#006600">height</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#003366;font-weight:bold">function</span><span style="color:#006600;font-weight:bold">(</span>d<span style="color:#006600;font-weight:bold">)</span> <span style="color:#006600;font-weight:bold">(</span>d + <span style="color:#800000">1</span><span style="color:#006600;font-weight:bold">)</span> * <span style="color:#800000">13</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-family:&#39;Courier New&#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  Â  .<span style="color:#006600">left</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#003366;font-weight:bold">function</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#006600;font-weight:bold">)</span> <span style="color:#000066;font-weight:bold">this</span>.<span style="color:#006600">index</span> * <span style="color:#800000">3</span><span style="color:#006600;font-weight:bold">)</span></div>
</li>
<li style="font-weight:bold;color:#26536A">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â  Â  .<span style="color:#006600">root</span>.<span style="color:#006600">render</span><span style="color:#006600;font-weight:bold">(</span><span style="color:#006600;font-weight:bold">)</span>;</div>
</li>
<li style="font-family:&#39;Courier New&#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B">
<div style="color:#000000;font-family:&#39;Courier New&#39;, Courier, monospace;font-weight:normal">Â </div>
</li>
</ol>
</div>
</div>
</div>
<p>which produces <img src="http://vis.stanford.edu/protovis/ex/area-chart.png"/>.</p>
<p>Very cool indeed!</p>
<div>
<a href="http://feeds2.feedburner.com/~ff/ajaxian?a=PiPgb8gSSNE:V6GfWkreDTo:yIl2AUoC8zA"><img src="http://feeds2.feedburner.com/~ff/ajaxian?d=yIl2AUoC8zA" border="0"/></a> <a href="http://feeds2.feedburner.com/~ff/ajaxian?a=PiPgb8gSSNE:V6GfWkreDTo:7Q72WNTAKBA"><img src="http://feeds2.feedburner.com/~ff/ajaxian?d=7Q72WNTAKBA" border="0"/></a> <a href="http://feeds2.feedburner.com/~ff/ajaxian?a=PiPgb8gSSNE:V6GfWkreDTo:D7DqB2pKExk"><img src="http://feeds2.feedburner.com/~ff/ajaxian?i=PiPgb8gSSNE:V6GfWkreDTo:D7DqB2pKExk" border="0"/></a>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2009/04/06/great-visualizations-with-protovis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DataTables: Major update to the highly flexible data table component</title>
		<link>http://www.glennmarcus.com/blog/2009/03/10/datatables-major-update-to-the-highly-flexible-data-table-component/</link>
		<comments>http://www.glennmarcus.com/blog/2009/03/10/datatables-major-update-to-the-highly-flexible-data-table-component/#comments</comments>
		<pubDate>Tue, 10 Mar 2009 11:46:41 +0000</pubDate>
		<dc:creator>Dion Almaer</dc:creator>
				<category><![CDATA[ajax]]></category>
		<category><![CDATA[Front Page]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/ed6b060202ba07df</guid>
		<description><![CDATA[<p><img src="http://ajaxian.com/wp-content/uploads/datatables.png" alt="" title="datatables" width="500" height="214"/></p>
<p>Allan Jardine has updated his popular <a href="http://www.datatables.net/">DataTables</a> rich data grid control. Allan told us what his aims were for this 1.4.1 release:</p>
<blockquote><p>
Being fairly happy with the options that DataTables presents to the end user, I&#8217;ve focused this release on providing tools for the developer. A plug-in API, non-destructive DOM manipulation (the biggest weak point of the old versions) and documentation are the major new features.
</p>
</blockquote>
<p>If you take a look at the new <a href="http://www.datatables.net/api">rich API</a> you will see that can manipulate the data in the table, build filters, fetch remote data, and more.</p>
<p>What does DataTables feature again?</p>
<ul>
<li>Variable length pagination</li>
<li>On-the-fly filtering</li>
<li>Multi-coloum sorting with data type detection</li>
<li>Smart handling of column widths</li>
<li>Fully internationalisable<br /><span style="font-style:smaller">UK, French, German, Spanish, Russian, Norwegian, Portuguese Brazilian (and more) translations provided</span></li>
<li>State saving</li>
<li>Hidden columns</li>
<li>Dynamic creation of tables</li>
<li>Ajax auto loading of data</li>
<li>Custom DOM positioning</li>
<li>Single column filtering</li>
<li>Alternative pagination types</li>
<li>Non-destructive DOM interaction</li>
<li>Sorting column(s) highlighting</li>
<li>Extensive plug-in support<br /><span style="font-size:smaller">Sorting, type detection, API functions and pagination</span></li>
<li>Fully themeable by CSS</li>
<li>Solid documentation</li>
</ul>
<div>
<a href="http://feeds2.feedburner.com/~ff/ajaxian?a=tW5s_WVitqk:HiNF55PT54c:yIl2AUoC8zA"><img src="http://feeds2.feedburner.com/~ff/ajaxian?d=yIl2AUoC8zA" border="0"/></a> <a href="http://feeds2.feedburner.com/~ff/ajaxian?a=tW5s_WVitqk:HiNF55PT54c:7Q72WNTAKBA"><img src="http://feeds2.feedburner.com/~ff/ajaxian?d=7Q72WNTAKBA" border="0"/></a> <a href="http://feeds2.feedburner.com/~ff/ajaxian?a=tW5s_WVitqk:HiNF55PT54c:D7DqB2pKExk"><img src="http://feeds2.feedburner.com/~ff/ajaxian?i=tW5s_WVitqk:HiNF55PT54c:D7DqB2pKExk" border="0"/></a>
</div>
]]></description>
			<content:encoded><![CDATA[<p><img src="http://ajaxian.com/wp-content/uploads/datatables.png" alt="" title="datatables" width="500" height="214"/></p>
<p>Allan Jardine has updated his popular <a href="http://www.datatables.net/">DataTables</a> rich data grid control. Allan told us what his aims were for this 1.4.1 release:</p>
<blockquote><p>
Being fairly happy with the options that DataTables presents to the end user, I&#8217;ve focused this release on providing tools for the developer. A plug-in API, non-destructive DOM manipulation (the biggest weak point of the old versions) and documentation are the major new features.
</p>
</blockquote>
<p>If you take a look at the new <a href="http://www.datatables.net/api">rich API</a> you will see that can manipulate the data in the table, build filters, fetch remote data, and more.</p>
<p>What does DataTables feature again?</p>
<ul>
<li>Variable length pagination</li>
<li>On-the-fly filtering</li>
<li>Multi-coloum sorting with data type detection</li>
<li>Smart handling of column widths</li>
<li>Fully internationalisable<br /><span style="font-style:smaller">UK, French, German, Spanish, Russian, Norwegian, Portuguese Brazilian (and more) translations provided</span></li>
<li>State saving</li>
<li>Hidden columns</li>
<li>Dynamic creation of tables</li>
<li>Ajax auto loading of data</li>
<li>Custom DOM positioning</li>
<li>Single column filtering</li>
<li>Alternative pagination types</li>
<li>Non-destructive DOM interaction</li>
<li>Sorting column(s) highlighting</li>
<li>Extensive plug-in support<br /><span style="font-size:smaller">Sorting, type detection, API functions and pagination</span></li>
<li>Fully themeable by CSS</li>
<li>Solid documentation</li>
</ul>
<div>
<a href="http://feeds2.feedburner.com/~ff/ajaxian?a=tW5s_WVitqk:HiNF55PT54c:yIl2AUoC8zA"><img src="http://feeds2.feedburner.com/~ff/ajaxian?d=yIl2AUoC8zA" border="0"/></a> <a href="http://feeds2.feedburner.com/~ff/ajaxian?a=tW5s_WVitqk:HiNF55PT54c:7Q72WNTAKBA"><img src="http://feeds2.feedburner.com/~ff/ajaxian?d=7Q72WNTAKBA" border="0"/></a> <a href="http://feeds2.feedburner.com/~ff/ajaxian?a=tW5s_WVitqk:HiNF55PT54c:D7DqB2pKExk"><img src="http://feeds2.feedburner.com/~ff/ajaxian?i=tW5s_WVitqk:HiNF55PT54c:D7DqB2pKExk" border="0"/></a>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2009/03/10/datatables-major-update-to-the-highly-flexible-data-table-component/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>50 Useful JavaScript Tools</title>
		<link>http://www.glennmarcus.com/blog/2009/02/08/50-useful-javascript-tools/</link>
		<comments>http://www.glennmarcus.com/blog/2009/02/08/50-useful-javascript-tools/#comments</comments>
		<pubDate>Mon, 09 Feb 2009 02:29:23 +0000</pubDate>
		<dc:creator>Jacob Gube</dc:creator>
				<category><![CDATA[ajax]]></category>
		<category><![CDATA[Developer's Toolbox]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[useful]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/5eea72ae1ddb6dde</guid>
		<description><![CDATA[<p><em>By Jacob Gube</em></p>
<p><strong>JavaScript</strong> is a  powerful client-side scripting language used in many modern websites and Web applications. In the hands of a skilled Web developer, JavaScript can enhance the userâ€™s  experience of the website and provide rich interactive components and features. But even though syntactically simple in nature, JavaScript is often difficult to author because of the environment it runs in: the Web browser. JavaScriptâ€™s popularity is evident in emerging technologies,  such as <a href="http://livedocs.adobe.com/labs/air/1/jslr/">Adobe AIR</a>, which use it as a supported language for creating desktop-based applications. </p>
<p>Below, youâ€™ll find <strong>50  excellent tools to help you achieve various tasks involved in authoring JavaScript  code</strong>. Youâ€™ll find useful tools to speed up your coding  processes, including debugging tools to hunt down places where your  scripts break, unit testing and validation tools to test your scripts  in various situations, security vulnerability scanners and code optimization  tools to make sure your scripts are light as a feather.</p>
<p>Youâ€™ll also find a few new and alternative JavaScript and AJAX  frameworks to help you explore options beyond the big names  (i.e. MooTools, jQuery, YUI, Dojo, Prototype), in addition to useful scripts  to help you accomplish a host of design and development tasks related to  JavaScript.</p>
<p>Also, be sure to check out the following related posts:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2008/09/11/75-really-useful-javascript-techniques/">75  (Really) Useful JavaScript Techniques</a></li>
<li><a href="http://www.smashingmagazine.com/2008/04/15/60-more-ajax-and-javascript-solutions-for-professional-coding/">60  AJAX- and Javascript Solutions For Professional Coding</a></li>
<li><a href="http://www.smashingmagazine.com/2008/09/16/jquery-examples-and-best-practices/">jQuery  and JavaScript Coding: Examples and Best Practices</a></li>
<li><a href="http://www.smashingmagazine.com/2008/12/09/50-really-useful-css-tools/">50  Extremely Useful And Powerful CSS Tools</a></li>
</ul>
<h3>JavaScript/AJAX Authoring Tools</h3>
<ul>
<li><a href="http://ui.jquery.com/themeroller/">jQuery UI</a><br />
The jQuery UI allows you to design custom user  interfaces for Web applications using the <a href="http://jquery.com/">jQuery</a> library. With jQuery&#8230;</li></ul>]]></description>
			<content:encoded><![CDATA[<p><em>By Jacob Gube</em></p>
<p><strong>JavaScript</strong> is a  powerful client-side scripting language used in many modern websites and Web applications. In the hands of a skilled Web developer, JavaScript can enhance the userâ€™s  experience of the website and provide rich interactive components and features. But even though syntactically simple in nature, JavaScript is often difficult to author because of the environment it runs in: the Web browser. JavaScriptâ€™s popularity is evident in emerging technologies,  such as <a href="http://livedocs.adobe.com/labs/air/1/jslr/">Adobe AIR</a>, which use it as a supported language for creating desktop-based applications. </p>
<p>Below, youâ€™ll find <strong>50  excellent tools to help you achieve various tasks involved in authoring JavaScript  code</strong>. Youâ€™ll find useful tools to speed up your coding  processes, including debugging tools to hunt down places where your  scripts break, unit testing and validation tools to test your scripts  in various situations, security vulnerability scanners and code optimization  tools to make sure your scripts are light as a feather.</p>
<p>Youâ€™ll also find a few new and alternative JavaScript and AJAX  frameworks to help you explore options beyond the big names  (i.e. MooTools, jQuery, YUI, Dojo, Prototype), in addition to useful scripts  to help you accomplish a host of design and development tasks related to  JavaScript.</p>
<p>Also, be sure to check out the following related posts:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2008/09/11/75-really-useful-javascript-techniques/">75  (Really) Useful JavaScript Techniques</a></li>
<li><a href="http://www.smashingmagazine.com/2008/04/15/60-more-ajax-and-javascript-solutions-for-professional-coding/">60  AJAX- and Javascript Solutions For Professional Coding</a></li>
<li><a href="http://www.smashingmagazine.com/2008/09/16/jquery-examples-and-best-practices/">jQuery  and JavaScript Coding: Examples and Best Practices</a></li>
<li><a href="http://www.smashingmagazine.com/2008/12/09/50-really-useful-css-tools/">50  Extremely Useful And Powerful CSS Tools</a></li>
</ul>
<h3>JavaScript/AJAX Authoring Tools</h3>
<ul>
<li><a href="http://ui.jquery.com/themeroller/">jQuery UI</a><br />
The jQuery UI allows you to design custom user  interfaces for Web applications using the <a href="http://jquery.com/">jQuery</a> library. With jQuery UI, you can reduce the amount of code you write for common  rich interactive features and website widgets. Be sure to check out the <a href="http://ui.jquery.com/demos/">jQuery UI Demo</a> page, which showcases  some of the things you can accomplish using jQuery UI.</p>
<p><a href="http://ui.jquery.com/themeroller/"><img src="http://88.198.60.17/images/javascript-tools-images/01_jqueryui.jpg" alt="jQuery UI - screen shot." width="500" height="319"/></a></p>
</li>
<li><a href="http://code.google.com/webtoolkit/overview.html">Google Web Toolkit</a><br />
The Google Web Toolkit (commonly referred to as GWT) is a  framework for developing complex and fully featured AJAX-based Web  applications. You write front-end code in Java that is later compiled into  optimized and cross-browser-friendly JavaScript. GWT puts the focus on Web application development by reducing the need for testing and  debugging JavaScript for browser quirks.</li>
<li><a href="http://jxlib.org/">Jx</a><br />
Jx is a JavaScript library for creating graphical user  interfaces written on top of the <a href="http://mootools.net/">MooTools</a> framework. Jx is distributed with an <a href="http://www.opensource.org/licenses/mit-license.php">MIT license</a> and  is well documented. Numerous examples as well as thorough  and well-organized API documentation is available on the website.</p>
<p><a href="http://jxlib.org/"><img src="http://78.46.108.98/images/javascript-tools-images/02_jx.jpg" alt="Jx - screen shto." width="500" height="239"/></a></p>
</li>
<li><a href="http://www.thefrontside.net/freestyle">Freestyle Webtop Toolkit</a><br />
Freestyle aims to reduce the complexity and time involved in  deploying Web-based user interfaces by eliminating the separation of client-side and server-side development. With Freestyle, you focus on  programming logic and UI design, and it handles the rest (i.e. cross-browser  compatibility and DHTML and AJAX development).</p>
<p><a href="http://www.thefrontside.net/freestyle"><img src="http://88.198.60.17/images/javascript-tools-images/03_freestyle.jpg" alt="Freestyle Webtop Toolkit - screen shot." width="356" height="170"/></a></p>
</li>
<li><a href="http://projects.nikhilk.net/ScriptSharp">Script#</a><br />
Script# is an AJAX and JavaScript authoring tool that allows developers to write in C#. It also allows  .NET developers to leverage their existing knowledge and provides powerful  tools associated with the .NET framework.</p>
<p><a href="http://projects.nikhilk.net/ScriptSharp"><img src="http://78.46.108.98/images/javascript-tools-images/04_script.jpg" alt="Script# - screen shot." width="462" height="228"/></a></p>
</li>
<li><a href="http://www.aptana.com/jaxer/">Aptana Jaxer</a><br />
Aptana Jaxer is the first â€œAJAX  serverâ€ that allows developers to use their AJAX, HTML, JavaScript and DOM knowledge to create  fully featured server-side-powered Web applications. With Jaxer, you can even  write database queries in JavaScript syntax. Jaxer integrates very well with  popular JavaScript libraries such as jQuery, <a href="http://www.dojotoolkit.org/">Dojo</a> and <a href="http://extjs.com/">Ext  JS</a>.</li>
<li><a href="http://www.jslab.dk/tools.regex.php">JS Regex Generator</a><br />
JS Regex Generator helps JavaScript developers write <a href="http://en.wikipedia.org/wiki/Regular_expression">Regular Expressions</a> for matching strings of text. This is commonly done for text-format validation, such as when checking  if inputted text has the correct date and email format.</p>
<p><a href="http://www.jslab.dk/tools.regex.php"><img src="http://88.198.60.17/images/javascript-tools-images/05_js_regex_generator.jpg" alt="JS Regex Generator - screen shot." width="330" height="284"/></a></p>
</li>
<li><a href="http://www.wavemaker.com/">WaveMaker</a><br />
WaveMaker is open-source software for complete Web application development and deployment. You can find a host of demo applications built and deployed using WaveMaker on the <a href="http://www.wavemaker.com/product/demos.html">Demo Applications</a> page.</p>
<p><a href="http://www.wavemaker.com/"><img src="http://78.46.108.98/images/javascript-tools-images/06_wavemaker.jpg" alt="WaveMaker - screen shot." width="500" height="228"/></a></p>
</li>
</ul>
<h3>Documentation Tools</h3>
<ul>
<li><a href="http://code.google.com/p/jsdoc-toolkit/">JSDoc Toolkit</a><br />
JSDoc Toolkit makes code documentation a breeze. Written in  JavaScript, it helps developers automatically generate templates for  JavaScript comments. Itâ€™s a great tool for managing large-scale applications  developed by teams of developers who have different coding styles.</li>
<li><a href="http://jgrouse.com/#jgdoc">jGrouseDoc</a><br />
jGrouseDoc is an open-source project distributed through <a href="http://code.google.com/p/jgrousedoc/">Google Code</a> under a modified BSD license. It lets  developers document and manage their code comments using a format similar to <a href="http://java.sun.com/j2se/javadoc/">Javadoc</a>â€™s.</p>
<p><a href="http://jgrouse.com/#jgdoc"><img src="http://88.198.60.17/images/javascript-tools-images/07_jsgrouse.jpg" alt="jGrouseDoc - screen shot." width="354" height="253"/></a></p>
</li>
</ul>
<h3>JavaScript Debugging Tools</h3>
<ul>
<li><a href="http://getfirebug.com/">Firebug</a><br />
Firebug is an extremely popular and well-regarded front-end  debugging tool. It has all the features youâ€™d expect from a JavaScript  debugging tool, such as the ability to set breakpoints in your code so that you  can step through your script. For people developing outside of Mozilla-based  browsers, check out <a href="http://getfirebug.com/lite.html">Firebug Lite</a>, which is a JavaScript library you can include in your Web pages to access  some of the features of Firebug.</p>
<p><a href="http://getfirebug.com/"><img src="http://78.46.108.98/images/javascript-tools-images/08_firebug.jpg" alt="Firebug - screen shot." width="470" height="269"/></a></p>
</li>
<li><a href="http://www.mozilla.org/projects/venkman/">Venkman  JavaScript Debugger</a><br />
Venkman is Mozillaâ€™s JavaScript debugger and an add-on for  Gecko-based browsers. Venkman is a robust and fully featured JavaScript  debugging environment, with a host of useful features and options, such as code  profiling to inspect your scriptâ€™s performance.</p>
<p><a href="http://www.mozilla.org/projects/venkman/"><img src="http://88.198.60.17/images/javascript-tools-images/09_venkman.jpg" alt="Venkman JavaScript Debugger - screen shot." width="500" height="233"/></a></p>
</li>
<li><a href="http://webkit.org/blog/61/introducing-drosera/">Drosera</a><br />
Drosera is an excellent debugging tool for Safari and  WebKit-based browsers.</p>
<p><a href="http://webkit.org/blog/61/introducing-drosera/"><img src="http://78.46.108.98/images/javascript-tools-images/10_drosera.jpg" alt="Drosera - screen shot." width="274" height="344"/></a></p>
</li>
<li><a href="http://www.opera.com/dragonfly/">Opera Dragonfly</a><br />
Opera Dragonfly is a robust debugging environment for the  Opera browser. Dragonfly allows you to view and inspect errors, debug your  scripts and inspect and edit the DOM and CSS on the fly.</li>
<li><a href="http://www.nitobibug.com/">NitobiBug</a><br />
NitobiBug is a browser-based JavaScript object logger and  inspector. It runs on numerous browsers, including IE, Safari, Opera and  Firefox. It is a powerful tool in helping developers build rich interactive AJAX applications.</li>
<li><a href="http://www.debugbar.com/">DebugBar</a><br />
DebugBar is an in-browser front-end debugger for Internet  Explorer. Much like its Firefox counterparts, it has a robust set of features, such as DOM, JavaScript and cookie inspection. Be sure to check out <a href="http://www.my-debugbar.com/wiki/CompanionJS/HomePage">Companion JS</a>,  which is a JavaScript debugging library to be used alongside DebugBar.</p>
<p><a href="http://www.debugbar.com/"><img src="http://88.198.60.17/images/javascript-tools-images/11_debugbar.jpg" alt="DebugBar - screen shot." width="489" height="284"/></a></p>
</li>
<li><a href="http://www.microsoft.com/downloads/details.aspx?familyid=e59c3964-672d-4511-bb3e-2d5e1db91038&amp;displaylang=en">Internet  Explorer Developer Toolbar</a><br />
Similar to Firebug, IE Developer Toolbar is an  in-browser tool to help you debug front-end code in Internet Explorer. Itâ€™s  especially handy as a debugging and inspection alternative to Firefox when  youâ€™re developing and testing in IE.</li>
</ul>
<h3>JavaScript Testing and Validation Tools</h3>
<ul>
<li><a href="http://javascriptmvc.com/learningcenter/test/index.html">Test &#8211;  JavaScriptMVC</a><br />
Test is a JavaScriptMVC component for easily setting up  automated unit testing for JavaScript code. It lets you effectively test for  DOM events (such as a key press or form submission), thereby lessening  development time, oversight and errors associated with manual testing.</p>
<p><a href="http://javascriptmvc.com/learningcenter/test/index.html"><img src="http://78.46.108.98/images/javascript-tools-images/12_test.jpg" alt="Test - JavaScriptMVC - screen shot." width="450" height="171"/></a></p>
</li>
<li><a href="http://www.jsunit.net/">JsUnit</a><br />
JsUnit is a popular unit testing framework for JavaScript  code. Itâ€™s a JavaScript port from another unit testing framework for Java called <a href="http://www.junit.org/">JUnit</a>. JsUnit allows you to write test cases and provides tools for automated code execution.</li>
<li><a href="http://jslint.com/">JSLint</a><br />
JSLint is a Web-based tool for verifying your JavaScript  code for errors. It has a ton of features and settings that you can use to  customize verification algorithms to suit your needs.</p>
<p><a href="http://jslint.com/"><img src="http://88.198.60.17/images/javascript-tools-images/12_jslint.jpg" alt="JSLint - screen shot." width="368" height="205"/></a></p>
</li>
<li><a href="http://www.thefrontside.net/crosscheck">Crosscheck</a><br />
Crosscheck is an open-source testing framework for  JavaScript. Crosscheck is unique because it works independent of environment:  you can run tests outside of a Web browser, which avoids discrepancies that occur when testing  in various browsers.</li>
<li><a href="http://developer.yahoo.com/yui/yuitest/#start">YUI  Test</a><br />
YUI Test is a suite of testing utilities thatâ€™s part of the <a href="http://developer.yahoo.com/yui/">YUI library</a> developed by Yahoo!. It  has numerous features, such as easy creation of test cases through an intuitive  syntax, advanced failure detection and the ability to organize test cases by  grouping them into test suites.</p>
<p><a href="http://developer.yahoo.com/yui/yuitest/#start"><img src="http://78.46.108.98/images/javascript-tools-images/14_yui_test.jpg" alt="YUI Test - screen shot." width="436" height="169"/></a></p>
</li>
<li><a href="http://j3unit.sourceforge.net/">J3Unit</a><br />
J3Unit is an excellent object-oriented unit-testing  framework for JavaScript. It gives you a host of options for writing automated  test cases and has three modes: <a href="http://j3unit.sourceforge.net/#static">Static  Mode</a>, <a href="http://j3unit.sourceforge.net/#local">Local Browser Mode</a> and <a href="http://j3unit.sourceforge.net/#remote">Remote Browser Mode</a>.</li>
<li><a href="http://erik.eae.net/playground/regexp/regexp.html">Regular  Expression Tool</a><br />
The Regular Expression Tool is an online utility that allows  you to test your RegEx code against a sample test. Itâ€™s a handy tool to have  around when you want to quickly test the efficacy of your regular expressions  in a variety of example texts.</p>
<p><a href="http://erik.eae.net/playground/regexp/regexp.html"><img src="http://88.198.60.17/images/javascript-tools-images/15_regex_tool.jpg" alt="Regular Expression Tool - screen shot." width="458" height="251"/></a></p>
</li>
<li><a href="http://www.codeproject.com/KB/scripting/regex2.aspx">JavaScript  Regular Expression Tester</a><br />
This is another handy tool for testing regular expressions  within the Web browser.</p>
<p><a href="http://www.codeproject.com/KB/scripting/regex2.aspx"><img src="http://78.46.108.98/images/javascript-tools-images/16_reg_ex_tester.jpg" alt="JavaScript Regular Expression Tester - screen shot." width="450" height="287"/></a></p>
</li>
<li><a href="http://broofa.com/Tools/JSLitmus/">JSLitmus</a><br />
JSLitmus is a lightweight tool for creating JavaScript  benchmarks and performance tests, using an intuitive API.</p>
<p><a href="http://broofa.com/Tools/JSLitmus/"><img src="http://88.198.60.17/images/javascript-tools-images/27_jslitmus.jpg" alt="JSLitmus - screen shot." width="283" height="251"/></a></p>
</li>
</ul>
<h3>Security Tools</h3>
<ul>
<li><a href="http://www.gnucitizen.org/blog/attackapi/">AttackAPI</a><br />
AttackAPI is a framework for writing test cases of potential  JavaScript exploits and vulnerabilities.</li>
<li><a href="http://code.google.com/p/jsfuzzer/">jsfuzzer</a><br />
jsfuzzer is a <a href="http://en.wikipedia.org/wiki/Fuzz_testing">fuzzing</a> tool to help you  write (and test for) attack vectors in JavaScript.</li>
</ul>
<h3>New and Alternative JavaScript and Ajax Development Frameworks</h3>
<ul>
<li><a href="http://clean-ajax.sourceforge.net/">Clean AJAX</a><br />
Clean AJAX  is an open-source framework for creating AJAX-based applications. Check  out the <a href="http://clean-ajax.sourceforge.net/index.php?tab=demos">demo  page</a> to see it in action.</p>
<p><a href="http://clean-ajax.sourceforge.net/"><img src="http://78.46.108.98/images/javascript-tools-images/17_cleanajax.jpg" alt="Clean AJAX - screen shot." width="409" height="115"/></a></p>
</li>
<li><a href="http://www.modernmethod.com/sajax/index.phtml">SAJAX</a><br />
SAJAX is an excellent toolkit for developing AJAX-based  applications. It supports PHP, Perl and Python.</p>
<p><a href="http://www.modernmethod.com/sajax/index.phtml"><img src="http://88.198.60.17/images/javascript-tools-images/18_sajax.jpg" alt="SAJAX - screen shot." width="235" height="243"/></a></p>
</li>
<li><a href="http://javascriptmvc.com/">JavaScriptMVC</a><br />
JavaScriptMVC is a Web application framework based on the <a href="http://en.wikipedia.org/wiki/Model-view-controller">MVC</a> software architectural  pattern. It speeds up Web development processes and lays down best practices,  maintainability and standards as principles in a projectâ€™s development.</li>
<li><a href="http://qooxdoo.org/">qooxdoo</a><br />
qooxdoo is a simple and intuitive AJAX application framework. Be sure to check  out the <a href="http://demo.qooxdoo.org/current/demobrowser/">Demo Browser</a>,  a Web-based application that allows you to view demos of qooxdoo at work.</p>
<p><a href="http://qooxdoo.org/"><img src="http://78.46.108.98/images/javascript-tools-images/19_qooxdoo.jpg" alt="qooxdoo - screen shot." width="500" height="251"/></a></p>
</li>
<li><a href="http://simplejs.bleebot.com/">SimpleJS</a><br />
SimpleJS is a small and lightweight JavaScript library that  provides developers with useful JavaScript functions for working with AJAX.</li>
</ul>
<h3>Image Manipulation and Graphing</h3>
<ul>
<li><a href="http://cow.neondragon.net/stuff/reflection/">Reflection.js</a><br />
Reflection.js automatically adds reflections to your images  unobtrusively. Also check out <a href="http://www.netzgesta.de/instant/">instant.js</a>,  a similar script that adds an image border and tilts images on a Web page.</p>
<p><a href="http://cow.neondragon.net/stuff/reflection/"><img src="http://88.198.60.17/images/javascript-tools-images/20_reflectionjs.jpg" alt="Reflection.js - screen shot." width="500" height="251"/></a></p>
</li>
<li><a href="http://typeface.neocracy.org/">typeface.js</a><br />
typeface.js allows you to embed custom fonts on Web pages,  freeing you from having to create images for HTML text.</li>
<li><a href="http://www.liquidx.net/canvasgraphjs/">CanvasGraph.js</a><br />
CanvasGraph.js is a simple JavaScript library that lets you  construct bar, line and pie charts using HTMLâ€™s canvas element.</p>
<p><a href="http://www.liquidx.net/canvasgraphjs/"><img src="http://78.46.108.98/images/javascript-tools-images/21_canvas_graph.jpg" alt="CanvasGraph.js - screen shot." width="500" height="251"/></a></p>
</li>
<li><a href="http://code.google.com/p/flot/">flot</a><br />
flot is a JavaScript library for plotting data and has been  tested to work in most modern Web browsers.</p>
<p><a href="http://code.google.com/p/flot/"><img src="http://88.198.60.17/images/javascript-tools-images/22_flot.jpg" alt="flot - screen shot." width="500" height="251"/></a></p>
</li>
<li><a href="http://www.lutanho.net/diagram/">JavaScript Diagram Builder</a><br />
The JavaScript Diagram Builder is a JavaScript library that consists  of a variety of objects and functions for constructing diagrams.</p>
<p><a href="http://www.lutanho.net/diagram/"><img src="http://78.46.108.98/images/javascript-tools-images/23_diagram_builder.jpg" alt="JavaScript Diagram Builder - screen shot." width="500" height="251"/></a></p>
</li>
<li><a href="http://www.dojotoolkit.org/2006/11/08/dojo-charting-engine-courtesy-greenplum-and-sitepen">The Dojo Charting Engine</a><br />
The Dojo Charting Engine is a robust utility for creating  components for data visualization, written on top of the <a href="http://www.dojotoolkit.org/">Dojo Toolkit</a>.</li>
</ul>
<h3>Useful Utilities and JavaScript Scripts</h3>
<ul>
<li><a href="http://ejohn.org/blog/processingjs/">Processing.js</a><br />
Processing.js is a JavaScript port of <a href="http://processing.org/">Processing</a>, the open-source data-visualization programming language. Check out <a href="http://blog.osmeusapontamentos.com/processing/dataVisualizationExamplesUsingProcessingJS.htm">examples  that use Processing.js</a>.</li>
<li><a href="http://code.google.com/apis/ajaxlibs/">AJAX  Libraries API</a><br />
Googleâ€™s AJAX Libraries API allows you to serve popular JavaScript  libraries using its CDN, which reduces the server load on your website.</li>
<li><a href="https://damnit.jupiterit.com/">DamnIT</a><br />
DamnIT is an error-reporting service that allows you to  gather feedback from beta testers after theyâ€™ve encountered a JavaScript error.  This is perfect for live production testing and as a monitoring tool that helps  you track errors and weak spots in your Web applications.</li>
<li><a href="http://code.google.com/p/ie7-js/">ie7-js</a><br />
ie7-js is a JavaScript library that forces Internet  Explorer to behave like a standards-based browser (like Firefox or  Opera). It automatically fixes IE browser quirks and deviations from Web  standards, as in the case of its box model.</li>
<li><a href="http://www.appelsiini.net/projects/lazyload">Lazy  loader</a><br />
Lazy loader is a jQuery plug-in that delays the loading of  images so that text content can load first, thereby making image-heavy pages load faster.</li>
</ul>
<h3>JavaScript Code Optimization and Minification Tools</h3>
<ul>
<li><a href="http://fmarcia.info/jsmin/test.html">JS Minifier</a><br />
JS Minifier is a Web-based tool for shrinking your JavaScript code  to make it as lightweight as possible.</p>
<p><a href="http://fmarcia.info/jsmin/test.html"><img src="http://88.198.60.17/images/javascript-tools-images/24_js_minifier.jpg" alt="JS Minifier - screen shot." width="500" height="251"/></a></p>
</li>
<li><a href="http://www.crockford.com/javascript/jsmin.html">JSMIN</a><br />
JSMIN is a popular JavaScript minifier that removes unneeded  characters (like spaces and tabs) and comments, thus reducing your scriptâ€™s  file size.</li>
<li><a href="http://developer.yahoo.com/yui/compressor/">YUI  Compressor</a><br />
The YUI Compressor is another well-regarded JavaScript code-optimization tool developed by Yahoo!.</li>
<li><a href="http://www.scriptalizer.com/">Scriptalizer</a><br />
Scriptalizer is a helpful online tool for combining  JavaScript files to reduce HTTP requests.</p>
<p><a href="http://www.scriptalizer.com/"><img src="http://78.46.108.98/images/javascript-tools-images/25_scriptilizer.jpg" alt="Scriptalizer - screen shot." width="500" height="251"/></a></p>
</li>
<li><a href="http://dojotoolkit.org/docs/shrinksafe">ShrinkSafe</a><br />
ShrinkSafe is a compression tool that reduces  JavaScript file sizes.</li>
<li><a href="http://mootools.net/slickspeed/">SlickSpeed  Selectors Test</a><br />
SlickSpeed is a Web page for comparing the  performance of the DOM object selection of various popular frameworks like MooTools  and jQuery.</p>
<p><a href="http://mootools.net/slickspeed/"><img src="http://88.198.60.17/images/javascript-tools-images/26_slickspeed.jpg" alt="SlickSpeed Selectors Test - screen shot." width="500" height="251"/></a></p>
</li>
</ul>
<h4>About the Author</h4>
<p><strong>Jacob Gube</strong> is a Web developer, designer, and founder of <a href="http://sixrevisions.com/">Six Revisions</a>, a blog on Web development  and design. If you want to connect with the author, you can <a href="http://twitter.com/jggube">follow him on Twitter</a>.</p>
<p><em>(al)</em></p>
<div>
<a href="http://feeds.feedburner.com/~f/SmashingMagazine?a=QySOyZ.q"><img src="http://feeds.feedburner.com/~f/SmashingMagazine?i=QySOyZ.q" border="0"/></a> <a href="http://feeds.feedburner.com/~f/SmashingMagazine?a=BwkIOg.q"><img src="http://feeds.feedburner.com/~f/SmashingMagazine?i=BwkIOg.q" border="0"/></a> <a href="http://feeds.feedburner.com/~f/SmashingMagazine?a=uq8NzN.q"><img src="http://feeds.feedburner.com/~f/SmashingMagazine?i=uq8NzN.q" border="0"/></a> <a href="http://feeds.feedburner.com/~f/SmashingMagazine?a=jZlu0R.q"><img src="http://feeds.feedburner.com/~f/SmashingMagazine?i=jZlu0R.q" border="0"/></a> <a href="http://feeds.feedburner.com/~f/SmashingMagazine?a=gPCCVY.Q"><img src="http://feeds.feedburner.com/~f/SmashingMagazine?i=gPCCVY.Q" border="0"/></a> <a href="http://feeds.feedburner.com/~f/SmashingMagazine?a=bPJP7N.Q"><img src="http://feeds.feedburner.com/~f/SmashingMagazine?i=bPJP7N.Q" border="0"/></a> <a href="http://feeds.feedburner.com/~f/SmashingMagazine?a=D6x7Kn.Q"><img src="http://feeds.feedburner.com/~f/SmashingMagazine?i=D6x7Kn.Q" border="0"/></a>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2009/02/08/50-useful-javascript-tools/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>30 essential controls</title>
		<link>http://www.glennmarcus.com/blog/2009/02/06/30-essential-controls/</link>
		<comments>http://www.glennmarcus.com/blog/2009/02/06/30-essential-controls/#comments</comments>
		<pubDate>Fri, 06 Feb 2009 17:46:26 +0000</pubDate>
		<dc:creator>(author unknown)</dc:creator>
				<category><![CDATA[ajax]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/488f958a060e45d9</guid>
		<description><![CDATA[<p>30 controls for RICH INTERFACE APPLICATION design and development.\r\n
<p><a href="http://www.ajaxrain.com/script.php?sId=5641" rel="nofollow"><img src="http://www.ajaxrain.com/rainImage/06feb0901.JPG" alt="" border="0"/></a></p>
<p><a href="http://feedads.googleadservices.com/~a/fDbzjp09Xm30725K6uv9iTGsJo8/a"><img src="http://feedads.googleadservices.com/~a/fDbzjp09Xm30725K6uv9iTGsJo8/i" border="0" ismap/></a></p>
]]></description>
			<content:encoded><![CDATA[<p>30 controls for RICH INTERFACE APPLICATION design and development.\r\n
<p><a href="http://www.ajaxrain.com/script.php?sId=5641" rel="nofollow"><img src="http://www.ajaxrain.com/rainImage/06feb0901.JPG" alt="" border="0"/></a></p>
<p><a href="http://feedads.googleadservices.com/~a/fDbzjp09Xm30725K6uv9iTGsJo8/a"><img src="http://feedads.googleadservices.com/~a/fDbzjp09Xm30725K6uv9iTGsJo8/i" border="0" ismap/></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2009/02/06/30-essential-controls/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Forget Chuck, Preloaders 3D right now!</title>
		<link>http://www.glennmarcus.com/blog/2009/02/02/forget-chuck-preloaders-3d-right-now/</link>
		<comments>http://www.glennmarcus.com/blog/2009/02/02/forget-chuck-preloaders-3d-right-now/#comments</comments>
		<pubDate>Mon, 02 Feb 2009 05:41:02 +0000</pubDate>
		<dc:creator>Dion Almaer</dc:creator>
				<category><![CDATA[ajax]]></category>
		<category><![CDATA[ui]]></category>
		<category><![CDATA[Front Page]]></category>
		<category><![CDATA[Utility]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/ec630c5453321b21</guid>
		<description><![CDATA[<p><img src="http://ajaxian.com/wp-content/uploads/preloader3d.png" alt="" title="preloader3d" width="61" height="196" style="float:right;padding:8px"/></p>
<p>I enjoy the US show Chuck (maybe because a geeky guy gets to hang with a beautiful woman? :) and there is a 3D episode to launch their new season. Our 2009 Ajax season relaunches an old favourite meme, the Ajax loaders (e.g. <a href="http://ajaxload.info/">ajaxload.info</a>) with a new 3D special.</p>
<p>Timur Gafforov has given us <a href="http://preloaders.net/">Preloaders</a> which allows you to select size, speed, and from a set of 3D spinners. Make your users wait in style! :)</p>
<p><img src="http://ajaxian.com/wp-content/uploads/preloaderconfig.png" alt="" title="preloaderconfig" width="493" height="524"/></p>
<div>
<a href="http://feeds.feedburner.com/~f/ajaxian?a=WNjJVn.Q"><img src="http://feeds.feedburner.com/~f/ajaxian?i=WNjJVn.Q" border="0"/></a> <a href="http://feeds.feedburner.com/~f/ajaxian?a=uH7xlh.Q"><img src="http://feeds.feedburner.com/~f/ajaxian?i=uH7xlh.Q" border="0"/></a> <a href="http://feeds.feedburner.com/~f/ajaxian?a=nrKDnb.q"><img src="http://feeds.feedburner.com/~f/ajaxian?i=nrKDnb.q" border="0"/></a>
</div>
]]></description>
			<content:encoded><![CDATA[<p><img src="http://ajaxian.com/wp-content/uploads/preloader3d.png" alt="" title="preloader3d" width="61" height="196" style="float:right;padding:8px"/></p>
<p>I enjoy the US show Chuck (maybe because a geeky guy gets to hang with a beautiful woman? :) and there is a 3D episode to launch their new season. Our 2009 Ajax season relaunches an old favourite meme, the Ajax loaders (e.g. <a href="http://ajaxload.info/">ajaxload.info</a>) with a new 3D special.</p>
<p>Timur Gafforov has given us <a href="http://preloaders.net/">Preloaders</a> which allows you to select size, speed, and from a set of 3D spinners. Make your users wait in style! :)</p>
<p><img src="http://ajaxian.com/wp-content/uploads/preloaderconfig.png" alt="" title="preloaderconfig" width="493" height="524"/></p>
<div>
<a href="http://feeds.feedburner.com/~f/ajaxian?a=WNjJVn.Q"><img src="http://feeds.feedburner.com/~f/ajaxian?i=WNjJVn.Q" border="0"/></a> <a href="http://feeds.feedburner.com/~f/ajaxian?a=uH7xlh.Q"><img src="http://feeds.feedburner.com/~f/ajaxian?i=uH7xlh.Q" border="0"/></a> <a href="http://feeds.feedburner.com/~f/ajaxian?a=nrKDnb.q"><img src="http://feeds.feedburner.com/~f/ajaxian?i=nrKDnb.q" border="0"/></a>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2009/02/02/forget-chuck-preloaders-3d-right-now/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>45+ New jQuery Techniques For Good User Experience</title>
		<link>http://www.glennmarcus.com/blog/2009/01/15/45-new-jquery-techniques-for-good-user-experience/</link>
		<comments>http://www.glennmarcus.com/blog/2009/01/15/45-new-jquery-techniques-for-good-user-experience/#comments</comments>
		<pubDate>Fri, 16 Jan 2009 04:00:54 +0000</pubDate>
		<dc:creator>Noura Yehia</dc:creator>
				<category><![CDATA[ajax]]></category>
		<category><![CDATA[Developer's Toolbox]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[techniques]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[useful]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/e19cfa75ef5489d3</guid>
		<description><![CDATA[<p><em>by Noura Yehia</em></p>
<p>JavaScipt libraries have made huge leaps and bounds in helping developers write code and develop products more quickly. <strong>jQuery</strong> is one of the most popular JavaScript frameworks, with powerful tools that improve the userâ€™s interaction with Web applications. jQuery has an additional advantage in that it allows developers to select elements on a page using CSS-like syntax.</p>
<p>To help you take it up a notch, we share below some methods that can help you give visitors to your website an amazing user experience. Here are <strong>over 45 impressive jQuery plug-ins and techniques</strong> that have been recently created and that could make the development of your next website an easier and more interesting experience than the last.</p>
<p>You may want to take a look at the following related posts:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2008/09/16/jquery-examples-and-best-practices/">jQuery and JavaScript Coding: Examples and Best Practices</a></li>
<li><a href="http://www.smashingmagazine.com/2008/09/11/75-really-useful-javascript-techniques/">75 (Really) Useful JavaScript Techniques</a></li>
<li><a href="http://www.smashingmagazine.com/2007/06/20/ajax-javascript-solutions-for-professional-coding/">80+ AJAX-Solutions For Professional Coding</a></li>
<li><a href="http://www.smashingmagazine.com/2008/04/15/60-more-ajax-and-javascript-solutions-for-professional-coding/">60 More AJAX- and Javascript Solutions For Professional Coding</a></li>
</ul>
<h3>Dynamic Content</h3>
<p><a href="http://nettuts.com/javascript-ajax/build-a-top-panel-with-jquery/">1. Build A Login Form With jQuery</a><br />In this tutorial, weâ€™ll create a sliding panel, that slides in to reveal more content, using JQuery to animate the height of the panel. In this case, we will be creating a hypothetical login for the new tutsplus area thatâ€™s coming soon.</p>
<p><a href="http://nettuts.com/javascript-ajax/build-a-top-panel-with-jquery/"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery08.gif" width="500" height="252" alt="jQuery"/></a></p>
<p><a href="http://css-tricks.com/revealing-photo-slider/">2. Spoiler Revealer with jQuery</a><br />A simple technique that hides some content first and fades it in once a link is clicked.</p>
<p><a href="http://css-tricks.com/revealing-photo-slider/"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/spoiler.gif" width="500" height="181" alt="jQuery"/></a></p>
<p><a href="http://valums.com/projects/ajax-upload/">3. AJAX Upload</a><br />This AJAX file upload plug-in allows users to easily upload multiple files without having to refresh the page. In addition, you can use any element to trigger the file selection window. The&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p><em>by Noura Yehia</em></p>
<p>JavaScipt libraries have made huge leaps and bounds in helping developers write code and develop products more quickly. <strong>jQuery</strong> is one of the most popular JavaScript frameworks, with powerful tools that improve the userâ€™s interaction with Web applications. jQuery has an additional advantage in that it allows developers to select elements on a page using CSS-like syntax.</p>
<p>To help you take it up a notch, we share below some methods that can help you give visitors to your website an amazing user experience. Here are <strong>over 45 impressive jQuery plug-ins and techniques</strong> that have been recently created and that could make the development of your next website an easier and more interesting experience than the last.</p>
<p>You may want to take a look at the following related posts:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2008/09/16/jquery-examples-and-best-practices/">jQuery and JavaScript Coding: Examples and Best Practices</a></li>
<li><a href="http://www.smashingmagazine.com/2008/09/11/75-really-useful-javascript-techniques/">75 (Really) Useful JavaScript Techniques</a></li>
<li><a href="http://www.smashingmagazine.com/2007/06/20/ajax-javascript-solutions-for-professional-coding/">80+ AJAX-Solutions For Professional Coding</a></li>
<li><a href="http://www.smashingmagazine.com/2008/04/15/60-more-ajax-and-javascript-solutions-for-professional-coding/">60 More AJAX- and Javascript Solutions For Professional Coding</a></li>
</ul>
<h3>Dynamic Content</h3>
<p><a href="http://nettuts.com/javascript-ajax/build-a-top-panel-with-jquery/">1. Build A Login Form With jQuery</a><br />In this tutorial, weâ€™ll create a sliding panel, that slides in to reveal more content, using JQuery to animate the height of the panel. In this case, we will be creating a hypothetical login for the new tutsplus area thatâ€™s coming soon.</p>
<p><a href="http://nettuts.com/javascript-ajax/build-a-top-panel-with-jquery/"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery08.gif" width="500" height="252" alt="jQuery"/></a></p>
<p><a href="http://css-tricks.com/revealing-photo-slider/">2. Spoiler Revealer with jQuery</a><br />A simple technique that hides some content first and fades it in once a link is clicked.</p>
<p><a href="http://css-tricks.com/revealing-photo-slider/"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/spoiler.gif" width="500" height="181" alt="jQuery"/></a></p>
<p><a href="http://valums.com/projects/ajax-upload/">3. AJAX Upload</a><br />This AJAX file upload plug-in allows users to easily upload multiple files without having to refresh the page. In addition, you can use any element to trigger the file selection window. The plug-in creates a semi-transparent file input screen over the button you specify, so when a user clicks on the button, the normal file selection window is shown. After the user selects a file, the plug-in submits the form that contains the file input to an iFrame. So it isnâ€™t true AJAX but provides the same user experience.</p>
<p><a href="http://valums.com/s/p/ajax-upload/demo.htm"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery05.jpg" alt="jQuery"/></a></p>
<p><a href="http://www.emposha.com/javascript/jquery/jquerymultiselect.html">4. FCBKcomplete</a><br />Give your users fancy Facebook-like dynamic inputs, with auto-complete and pre-added values.</p>
<p><a href="http://www.emposha.com/javascript/jquery/jquerymultiselect.html"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery06.jpg" alt="jQuery"/></a></p>
<p><a href="http://www.filamentgroup.com/lab/creating_accessible_charts_using_canvas_and_jquery">5. Create Accessible Charts Using Canvas and jQuery</a><br />This tool is proof that you can use the &lt;canvas&gt; element to illustrate HTML table data. The idea is a good one: putting the data in a table allows it to remain accessible, while the chart can be shown for visual enhancement.</p>
<p><a href="http://www.filamentgroup.com/lab/creating_accessible_charts_using_canvas_and_jquery"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery08.jpg" alt="jQuery"/></a></p>
<p>Â </p>
<h3>Form Manipulation</h3>
<p><a href="http://www.protofunc.com/scripts/jquery/checkbox-radiobutton/">6. Radio Button and Check Box Replacement</a><br />This jQuery tool replaces radio buttons and check boxes with a more appealing display.</p>
<p><a href="http://www.protofunc.com/scripts/jquery/checkbox-radiobutton/"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery07.jpg" alt="jQuery"/></a></p>
<p><a href="http://nettuts.com/javascript-ajax/submit-a-form-without-page-refresh-using-jquery/">7. Submit a Form without a Page Refresh</a>
</p>
<p><a href="http://nettuts.com/demos/contactform/"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery28.jpg" alt="jQuery"/></a></p>
<p><a href="http://midmodesign.com/news/coding/jquery-ajax-contact-form-with-honeypot/">8. jQuery AJAX Contact Form</a><br />Here is a quick and easy way to make a jQuery AJAX contact form with a â€œhoneypotâ€ to foil email bots, load success and error messages dynamically without leaving the page and provide descriptive error messages detailing why submitted values have failed validation.</p>
<p><a href="http://midmodesign.com/downloads/ajaxcontactformv1/"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery29.jpg" alt="jQuery"/></a></p>
<p><a href="http://www.willjessup.com/sandbox/jquery/form_validator/form_validate.html">9. Simple jQuery Form Validation</a><br />This jQuery form shows live form-input validators both server-side and browser-side.</p>
<p><a href="http://www.willjessup.com/sandbox/jquery/form_validator/form_validate.html"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery33.jpg" alt="jQuery"/></a></p>
<p>Â </p>
<h3>Navigation Menus</h3>
<p><a href="http://abeautifulsite.net/notebook/80">10. jQuery Context Menu</a><br />A context menu plug-in for jQuery that features easy implementation, keyboard shortcuts, CSS styling and control methods.</p>
<p><a href="http://abeautifulsite.net/notebook_files/80/demo/jqueryContextMenu.html"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery21.jpg" alt="jQuery"/></a></p>
<p><a href="http://www.jeremymartin.name/projects.php?project=kwicks">11. Kwicks for jQuery</a><br />Kwicks for jQuery started off as a port of the incredibly attractive MooTools framework, but has evolved into a highly customizable and versatile widget.</p>
<p><a href="http://www.jeremymartin.name/examples/kwicks.php?example=1"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery15.jpg" alt="jQuery"/></a></p>
<p><a href="http://www.filamentgroup.com/lab/jquery_ipod_style_drilldown_menu">12. jQuery iPod-style Drilldown Menu</a><br />â€œWe created an iPod-style drilldown menu to help users traverse hierarchical data quickly and with control. Itâ€™s especially helpful when organizing large data structures that donâ€™t translate well into traditional dropdown or fly-out menus.â€</p>
<p><a href="http://www.filamentgroup.com/lab/jquery_ipod_style_drilldown_menu"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery41.jpg" alt="jQuery"/></a></p>
<p><a href="http://abeautifulsite.net/notebook.php?article=58">13. jQuery File Tree</a><br />The jQuery File Tree is a configurable AJAX file-browser plug-in for jQuery. You can create a customized, fully-interactive file tree with as little as one line of JavaScript code.</p>
<p><a href="http://abeautifulsite.net/notebook_files/58/demo/"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery16.jpg" alt="jQuery"/></a></p>
<p><a href="http://nettuts.com/html-css-techniques/how-to-create-a-mootools-homepage-inspired-navigation-effect-using-jquery/">14. How to Create a MooTools Home Page-Inspired Navigation Effect</a><br />In this tutorial, youâ€™ll recreate the same effect seen in MooToolsâ€™s menu, but in jQuery!</p>
<p><a href="http://nettuts.s3.amazonaws.com/004_Moo/tutorial/demo/demo.html"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery17.jpg" alt="jQuery"/></a></p>
<p><a href="http://alistapart.com/articles/sprites2">15. CSS Sprites2</a><br />This tutorial demonstrates how to implement inline CSS Sprites2 using jQuery.</p>
<p><a href="http://alistapart.com/d/sprites2/examples/example6-function.html"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery19.jpg" alt="jQuery"/></a></p>
<p>Â </p>
<h3>Manipulating Content</h3>
<p><a href="http://nettuts.com/tutorials/javascript-ajax/create-an-amazoncom-books-widget-with-jquery-and-xml/">16. jQuery books widget</a><br />With some custom JavaScript and jQuery magic you can create some interesting widgets. A good way to demonstrate this functionality is by building a browsable Amazon.com books widget.</p>
<p><a href="http://nettuts.com/tutorials/javascript-ajax/create-an-amazoncom-books-widget-with-jquery-and-xml/"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery07.gif" width="500" height="252" alt="jQuery"/></a></p>
<p><a href="http://nettuts.com/tutorials/javascript-ajax/use-the-jquery-ui-to-control-the-size-of-your-text/">17. Text Size Slider</a><br />This tutorial explains how to use a slider to control the text size of an article on a page. This lets the user control exactly the size that suits them, and is also a pretty impressive feature to have on a site.</p>
<p><a href="http://nettuts.com/tutorials/javascript-ajax/use-the-jquery-ui-to-control-the-size-of-your-text/"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery09.gif" width="500" height="252" alt="jQuery"/></a></p>
<p><a href="http://plugins.jquery.com/project/pagination">18. Pagination</a><br />Create navigational elements: when you have a large number of items, you can group them into pages and present navigational elements that allow users to move from one page to another.</p>
<p><a href="http://d-scribe.de/webtools/jquery-pagination/demo.htm"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery34.jpg" alt="jQuery"/></a></p>
<p><a href="http://www.ndoherty.com/demos/coda-slider/1.1.1/">19. Coda-Slider</a><br />As with the last tool, groups items together using navigational elements that allow users to move from one page to another.</p>
<p><a href="http://www.ndoherty.com/demos/coda-slider/1.1.1/"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery35.jpg" alt="jQuery"/></a></p>
<p><a href="http://css-tricks.com/creating-a-slick-auto-playing-featured-content-slider/">20. Creating a Slick Auto-Playing Featured-Content Slider</a><br />If you love the <a href="http://www.ndoherty.com/demos/coda-slider/">Coda-Slider plug-in</a> for jQuery, then you will find this plug-in very useful for displaying lots of content in a small area. This nice plug-in adds some features not found in the original Coda-Slider, such as slowly cycling through panels, auto-playing different types of custom content. An arrow indicator serves as a visual indication of which panel you are currently viewing.</p>
<p><a href="http://css-tricks.com/creating-a-slick-auto-playing-featured-content-slider/"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery01.jpg" alt="jQuery"/></a></p>
<ul>
<li>Demo can be found <a href="http://css-tricks.com/examples/FeaturedContentSlider/">here</a>.</li>
<li>Download files <a href="http://css-tricks.com/examples/FeaturedContentSlider.zip">here</a>.</li>
</ul>
<p><a href="http://letmehaveblog.blogspot.com/2007/10/haccordion-simple-horizontal-accordion.html">21. haccordion</a><br />A simple horizontal accordion plug-in for jQuery.</p>
<p><a href="http://letmehaveblog.blogspot.com/2007/10/haccordion-simple-horizontal-accordion.html"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery36.jpg" alt="jQuery"/></a></p>
<p>Â </p>
<h3>Tabular Data and Grids</h3>
<p><a href="http://pure-essence.net/stuff/webTips/jqueryTableRowCheckboxToggle.html">22. Table Row Checkbox Toggle</a><br />This tool generically adds a toggle function to any table row you specify based on a CSS class name. It will, by default, toggle on any check boxes within that table row.</p>
<p><a href="http://pure-essence.net/stuff/webTips/jqueryTableRowCheckboxToggle.html"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery37.jpg" alt="jQuery"/></a></p>
<p><a href="http://tablesorter.com/docs/">23. Tablesorter</a><br />Tablesorter is a jQuery plug-in that turns a standard HTML table with &lt;th&gt; and &lt;td&gt; tags into a sortable table without the need for page refreshes. Tablesorter can successfully parse and sort many types of data, including linked data, in a cell.</p>
<p><a href="http://tablesorter.com/docs/"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery39.jpg" alt="jQuery"/></a></p>
<p><a href="http://dev.iceburg.net/jquery/tableEditor/demo.php">24. TableEditor</a><br />TableEditor provides flexible in-place editing of HTML tables. User-defined handler functions can easily be dropped in to update, for example, a data source via an AJAX request.</p>
<p><a href="http://dev.iceburg.net/jquery/tableEditor/demo.php"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery40.jpg" alt="jQuery"/></a></p>
<p><a href="http://www.webtoolkit.info/scrollable-html-table-plugin-for-jquery.html">25. Scrollable HTML Table</a><br />This JavaScript code can be used to convert ordinary HTML tables into scrollable ones.</p>
<p><a href="http://www.webtoolkit.info/demo/jquery/scrollable/demo.html"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery38.jpg" alt="jQuery"/></a></p>
<p>Â </p>
<h3>Lightbox Techniques</h3>
<p><a href="http://css-tricks.com/revealing-photo-slider/">26. Revealing Photo Slider</a><br />Learn how to create a thumbnail photo gallery, where clicking a button reveals the entire photo and more information about that photo.</p>
<p><a href="http://css-tricks.com/revealing-photo-slider/"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery04.gif" width="378" height="357" alt="jQuery"/></a></p>
<p><a href="http://fancy.klade.lv/">27. FancyBox</a><br />FancyBox was born to automatically scale large images to fit in windows, adding a nice drop-shadow under the zoomed item. It can be used to group related items and add navigation between them (using a pre-loading function). FancyBox is totally customizable through settings and CSS.</p>
<p><a href="http://fancy.klade.lv/"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery09.jpg" alt="jQuery"/></a></p>
<p><a href="http://www.dynamicdrive.com/dynamicindex4/facebox/index.htm">28. Facebox Image and Content Viewer </a><br />Facebox is a lightweight Facebook-style Lightbox that can display images, divs, and even entirely remote pages (via AJAX) inline on a page and on demand. It uses the compact jQuery library as its engine, unlike Lightbox v2.0, which uses Prototype.</p>
<p><a href="http://www.dynamicdrive.com/dynamicindex4/facebox/index.htm"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery22.jpg" alt="jQuery"/></a></p>
<p><a href="http://herr-schuessler.de/blog/jquerypopeye-an-inline-lightbox-alternative/">29. jQuery.popeye</a><br />jQuery.popeye is a plug-in that transforms an unordered list of images into a simple image gallery. When an image is clicked, it enlarges Lightbox-style. The images are displayed in a box with â€œPreviousâ€ and â€œNextâ€ controls, and information about the images can be included.</p>
<p><a href="http://dev.herr-schuessler.de/examples/jquery-popeye/"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery23.jpg" alt="jQuery"/></a></p>
<p>Â </p>
<h3>Image Galleries and Viewers</h3>
<p><a href="http://www.dynamicdrive.com/dynamicindex4/simplegallery.htm">30. Simple Controls Gallery</a><br />Simple Controls Gallery rotates and displays each image by fading it into view over the previous one, with navigation controls that pop up when the mouse hovers over the gallery. The controls allow the user to play, pause or jump to a specific image in the gallery.</p>
<p><a href="http://www.dynamicdrive.com/dynamicindex4/simplegallery.htm"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery04.jpg" alt="jQuery"/></a></p>
<p><a href="http://code.google.com/p/agile-carousel/">31. Agile Carousel</a><br />This jQuery plug-in allows you to easily create a custom carousel. Use the jQuery UI to enable many different types of transition. The plug-in uses PHP to call images from the folder you specify. Configure many different options including controls, slide timer length, easing type, transition type and more!</p>
<p><a href="http://www.5bosses.com/examples/agile_carousel/multi_example/carousel.html"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery10.jpg" alt="jQuery"/></a></p>
<p>Â </p>
<h3>Browser Tweaks</h3>
<p><a href="http://www.filamentgroup.com/lab/setting_equal_heights_with_jquery/">32. Setting Equal Heights with jQuery</a><br />A script to equalize the heights of boxes within the same container and create a tidy grid.</p>
<p><a href="http://www.filamentgroup.com/examples/equalHeights/"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery13.jpg" alt="jQuery"/></a></p>
<p><a href="http://www.emposha.com/javascript/jquery-ie6-png-transperency-fix.html">33. jQuery IE6 PNG Transparency Fix</a><br />Another IE6 PNG fix that uses jQuery selectors to automatically fix all PNG images on a page.</p>
<p><a href="http://plugins.jquery.com/project/bgiframe">34. BGI frame</a><br />This tool helps ease the pain of dealing with IE z-index issues. You can find a demo <a href="http://brandonaaron.net/jquery/plugins/bgiframe/test/">here</a>.</p>
<p><a href="http://remysharp.com/2008/01/21/fixing-ie-overflow-problem/">35. Fix Overflow</a><br />IE puts scroll bars inside overflowing elements, and if an element is only one line, the scroll bar will cover it. This plug-in fixes that issue.</p>
<p><a href="http://remysharp.com/2008/01/21/fixing-ie-overflow-problem/"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery30.jpg" alt="jQuery"/></a></p>
<p><a href="http://plugins.jquery.com/project/lazyload">36. Lazy Load</a><br />Lazy Load delays the loading of images below the fold on long pages. As the user scrolls down, the images are loaded as needed. Check out the demo <a href="http://www.appelsiini.net/projects/lazyload/enabled.html">here</a>.</p>
<p><a href="http://remysharp.com/2008/06/30/maxlength-plugin/">37. Maxlength</a><br />Itâ€™s a fairly common design practice to limit the number of characters a user can input in a field while giving feedback on how many spaces are left. This plug-in automates that task.</p>
<p><a href="http://remysharp.com/demo/maxlength.html"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery32.jpg" alt="jQuery"/></a></p>
<p>Â </p>
<h3>Animation Effects</h3>
<p><a href="http://www.flowplayer.org/tools/scrollable.html">38. Scrollable</a><br />Scrollable is a flexible and lightweight (3.9 KB) jQuery plug-in for creating scrollable content. Scrollable items can contain any HTML, such as text, images, forms, video or any combination of them. You can make items scroll horizontally or vertically and decide how many items are visible at once.</p>
<p><a href="http://www.flowplayer.org/tools/scrollable.html"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery24.jpg" alt="jQuery"/></a></p>
<p><a href="http://css-tricks.com/learning-jquery-fading-menu-replacing-content/">39. jQuery Fading Menu &#8211; Replacing Content</a><br />â€œInstead of thinking about CSS as page layout and a way to style your page when it loads, you can use in animation and change it on-the-fly to react to events that happen on your page. Take for example a menu. You can take the â€œclickâ€ event that happens when clicking on a menu to do lots of stuff.â€</p>
<p><a href="http://css-tricks.com/learning-jquery-fading-menu-replacing-content/"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery02.gif" width="500" height="149" alt="jQuery"/></a></p>
<p><a href="http://css-tricks.com/jquery-robot/">40. Build an Animated Cartoon Robot with jQuery</a><br />This effect simulates a faux 3-D animated background reminiscent of old-school side-scrolling video games (and not unlike the parallax effect). This effect is created by layering several empty divs over each other, with transparent PNGs as background images. The backgrounds are animated at different speeds using jQuery.</p>
<p><a href="http://robot.anthonycalzadilla.com/"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery27.jpg" alt="jQuery"/></a></p>
<p><a href="http://lab.smashup.it/flip">41. Flip</a><br />Flip is a plug-in for jQuery that â€œflipsâ€ page elements in four directions. Compatible with Firefox 2+, Internet Explorer 6+, Safari 3.1 (for Windows) and Google Chrome.</p>
<p><a href="http://lab.smashup.it/flip"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery02.jpg" alt="jQuery"/></a></p>
<ul>
<li>Download files <a href="http://lab.smashup.it/flip/files/jquery.flip-0.4.1.zip">here</a>.</li>
</ul>
<p><a href="http://snook.ca/archives/javascript/jquery-bg-image-animations/">42. Use jQuery for Background Image Animations</a><br />Animate your menu whenever a user hovers over an item with this effect.</p>
<p><a href="http://snook.ca/technical/jquery-bg/"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery18.jpg" alt="jQuery"/></a></p>
<p>Â </p>
<h3>Image Manipulation</h3>
<p><a href="http://deepliquid.com/content/Jcrop.html">43. Jcrop</a><br />Jcrop is the quick and easy way to add image-cropping functionality to your Web application. It combines the ease of use of a typical jQuery plug-in with a powerful cross-platform DHTML cropping engine that is faithful to familiar desktop graphics applications.</p>
<p><a href="http://deepliquid.com/projects/Jcrop/demos.php"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery11.jpg" alt="jQuery"/></a></p>
<p><a href="http://www.mind-projects.it/projects/jqzoom/">44. jQZoom</a><br />JQZoom is a JavaScript image magnifier that makes it really easy to magnify what you want. It is easy to customize and works on all modern browsers.</p>
<p><a href="http://www.mind-projects.it/projects/jqzoom/"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery25.jpg" alt="jQuery"/></a></p>
<p>Â </p>
<h3>Miscellaneous</h3>
<p><a href="http://www.filamentgroup.com/lab/update_date_range_picker_with_jquery_ui/">45. Date Range Picker</a><br />A rich date-range widget that uses the jQuery UIâ€™s date picker and some additional custom interaction.</p>
<p><a href="http://www.filamentgroup.com/lab/update_date_range_picker_with_jquery_ui/"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery14.jpg" alt="jQuery"/></a></p>
<p><a href="http://www.shopdev.co.uk/blog/sortable-lists-using-jquery-ui/">46. Sortable Lists</a><br />Unordered lists are commonly used to structure a websiteâ€™s navigation. Having the ability to re-order such lists would be extremely useful. Here is a method to easily save and reload the list element order without getting lost as the page is refreshed.</p>
<p><a href="http://www.shopdev.co.uk/blog/sortables.html"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery20.jpg" alt="jQuery"/></a></p>
<p><a href="http://yensdesign.com/2008/12/create-an-amazing-music-player-using-mouse-gestures-hotkeys-in-jquery/">47. Amazing Music Player Using Mouse Gestures and Hotkeys</a><br />Learn how to create an amazing music player, coded in XHTML and jQuery, that makes use of mouse gestures and hotkeys. You can click and drag the mouse to interact with the music playerâ€™s interface or use directional keys and the space bar instead of the mouse.</p>
<p><a href="http://yensdesign.com/tutorials/musicplayer/"><img src="http://78.46.108.98/images/jquery-scripts-tutorials/jquery26.jpg" alt="jQuery"/></a></p>
<p><a href="http://iso-100.com/blog/post/updated-script-for-tracking-outbound-links-in-google-analytics-with-jquery/">48. Script for Tracking Outbound Links in Google Analytics with jQuery</a><br />This code snippet uses Google Analytics and jQuery to automatically track outbound links. This interesting script enhances behavior by comparing the linkâ€™s domain to the current pageâ€™s domain and, if they are different, triggering the behavior. This is helpful when using a CMS or other tool that generates full URLs, including the â€œhttp://,â€ instead of relative ones.</p>
<pre name="code">&lt;script type=&quot;text/javascript&quot;&gt;
	$(&#39;#content a:not(.popupwindow)&#39;).filter(function() {
		var theHref = this;
		if (theHref.hostname &amp;&amp; theHref.hostname !== location.hostname) {
			$(theHref).not(&quot;.noAutoIcon&quot;).addClass(&quot;offSite&quot;);
			$(theHref).not(&quot;.noAutoLink&quot;).attr(&#39;target&#39;,&#39;_blank&#39;).bind(&#39;click keypress&#39;, function(event) {
				var code=event.charCode || event.keyCode;
				if (!code || (code &amp;&amp; code == 13)) {
					if(pageTracker){
						var fixedLink = this.href;
						fixedLink = fixedLink.replace(/https?:\/\/(.*)/,&quot;$1&quot;);
						fixedLink = &#39;/outgoing/&#39;   fixedLink;
						pageTracker._trackPageview(fixedLink);
					};
				};
			});
		};
	});
&lt;/script&gt;</pre>
<p><a href="http://www.stanlemon.net/projects/jgrowl.html">49. jGrowl</a><br />jGrowl is a jQuery plug-in that delivers unobtrusive messages within the browser, similar to the way that OS Xâ€™s <a href="http://growl.info/">Growl Framework</a> works.</p>
<p><a href="http://www.stanlemon.net/projects/jgrowl.html"><img src="http://88.198.60.17/images/jquery-scripts-tutorials/jquery12.jpg" alt="jQuery"/></a></p>
<h3>Related posts</h3>
<p>You may want to take a look at the following related posts:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2008/09/16/jquery-examples-and-best-practices/">jQuery and JavaScript Coding: Examples and Best Practices</a></li>
<li><a href="http://www.smashingmagazine.com/2008/09/11/75-really-useful-javascript-techniques/">75 (Really) Useful JavaScript Techniques</a></li>
<li><a href="http://www.smashingmagazine.com/2007/06/20/ajax-javascript-solutions-for-professional-coding/">80+ AJAX-Solutions For Professional Coding</a></li>
<li><a href="http://www.smashingmagazine.com/2008/04/15/60-more-ajax-and-javascript-solutions-for-professional-coding/">60 More AJAX- and Javascript Solutions For Professional Coding</a></li>
</ul>
<h4>About the author</h4>
<p>Noura Yehia is a Web designer and blogger who can be found at <a href="http://www.noupe.com">Noupe</a> and <a href="http://www.devsnippets.com">Devsnippets</a>. If you want to connect with the author, you can <a href="http://twitter.com/nourayehia">follow her on Twitter</a>.</p>
</p>
<div>
<a href="http://feeds.feedburner.com/~f/SmashingMagazine?a=FAnke3.p"><img src="http://feeds.feedburner.com/~f/SmashingMagazine?i=FAnke3.p" border="0"/></a> <a href="http://feeds.feedburner.com/~f/SmashingMagazine?a=z9Z3YL.p"><img src="http://feeds.feedburner.com/~f/SmashingMagazine?i=z9Z3YL.p" border="0"/></a> <a href="http://feeds.feedburner.com/~f/SmashingMagazine?a=suHZwj.p"><img src="http://feeds.feedburner.com/~f/SmashingMagazine?i=suHZwj.p" border="0"/></a> <a href="http://feeds.feedburner.com/~f/SmashingMagazine?a=xUbVxf.p"><img src="http://feeds.feedburner.com/~f/SmashingMagazine?i=xUbVxf.p" border="0"/></a> <a href="http://feeds.feedburner.com/~f/SmashingMagazine?a=PUxXt2.P"><img src="http://feeds.feedburner.com/~f/SmashingMagazine?i=PUxXt2.P" border="0"/></a> <a href="http://feeds.feedburner.com/~f/SmashingMagazine?a=GFe8aB.P"><img src="http://feeds.feedburner.com/~f/SmashingMagazine?i=GFe8aB.P" border="0"/></a> <a href="http://feeds.feedburner.com/~f/SmashingMagazine?a=YkRZo8.P"><img src="http://feeds.feedburner.com/~f/SmashingMagazine?i=YkRZo8.P" border="0"/></a>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2009/01/15/45-new-jquery-techniques-for-good-user-experience/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Happy Birthday jQuery! v1.3 is Released</title>
		<link>http://www.glennmarcus.com/blog/2009/01/14/happy-birthday-jquery-v1-3-is-released/</link>
		<comments>http://www.glennmarcus.com/blog/2009/01/14/happy-birthday-jquery-v1-3-is-released/#comments</comments>
		<pubDate>Wed, 14 Jan 2009 15:19:48 +0000</pubDate>
		<dc:creator>Rey Bango</dc:creator>
				<category><![CDATA[ajax]]></category>
		<category><![CDATA[Front Page]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/47cd2e8dcc1387b9</guid>
		<description><![CDATA[<p><em>Disclosure: I&#8217;m a member of the jQuery Project team</em></p>
<p>Back on January 14, 2006, a brash, young and talented developer named John Resig put out a personal project to the OSS world and hoped it could benefit *someone*. Little did he know that 3 years later, his side project would become one of the most influential frameworks for developing JavaScript-based applications. Today, the jQuery project turns 3 years old which, considering the churn rate for open source projects, is a monumental achievement. So it makes sense that on the project&#8217;s 3rd birthday,<a href="http://blog.jquery.com/2009/01/14/jquery-13-and-the-jquery-foundation/"> the team has announced the release of jQuery v1.3</a>, the latest and greatest release of jQuery which includes the new <a href="http://sizzlejs.com/">Sizzle selector engine</a>.</p>
<p>Along with the inclusion of Sizzle, jQuery v1.3 includes a bevvy of new features:</p>
<ul>
<li>Live Events: Event delegation with a jQuery twist</li>
<li>jQuery Event Overhaul: Completely rewired to simplify event handling.</li>
<li>HTML Injection Rewrite: Lightning-fast HTML appending.</li>
<li>Offset Rewrite: Super-quick position calculation.</li>
<li>No More Browser Sniffing: Using feature detection to help jQuery last for many more years to come.</li>
</ul>
<p>The details of the release can be found via the <a href="http://docs.jquery.com/Release:jQuery_1.3">release notes</a>.</p>
<p>In addition to that, <a href="http://remysharp.com/">Remy Sharp</a> donated a new dynamic <a href="http://api.jquery.com/">API browser</a> to the jQuery project which makes searching the jQuery API extremely easy:</p>
<p><a href="http://api.jquery.com/"><img src="http://ajaxian.com/wp-content/uploads/jqueryapibrowser.jpg" alt="" title="jqueryapibrowser" width="300" height="217"/></a></p>
<p>The API browser includes:</p>
<ul>
<li>All the latest jQuery and jQuery UI documentation.	</li>
<li>The ability to mark pages as favorites for those pages you keep wanting to return to.	</li>
<li>Syntax highlighting in the code examples	</li>
<li>Live running of examples within the browser	</li>
<li>Links to edit and experiment with the code examples	</li>
</ul>
<p>In addition, <a href="http://digitalspaghetti.me.uk/">Tane Piper</a> &#38;&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p><em>Disclosure: I&#8217;m a member of the jQuery Project team</em></p>
<p>Back on January 14, 2006, a brash, young and talented developer named John Resig put out a personal project to the OSS world and hoped it could benefit *someone*. Little did he know that 3 years later, his side project would become one of the most influential frameworks for developing JavaScript-based applications. Today, the jQuery project turns 3 years old which, considering the churn rate for open source projects, is a monumental achievement. So it makes sense that on the project&#8217;s 3rd birthday,<a href="http://blog.jquery.com/2009/01/14/jquery-13-and-the-jquery-foundation/"> the team has announced the release of jQuery v1.3</a>, the latest and greatest release of jQuery which includes the new <a href="http://sizzlejs.com/">Sizzle selector engine</a>.</p>
<p>Along with the inclusion of Sizzle, jQuery v1.3 includes a bevvy of new features:</p>
<ul>
<li>Live Events: Event delegation with a jQuery twist</li>
<li>jQuery Event Overhaul: Completely rewired to simplify event handling.</li>
<li>HTML Injection Rewrite: Lightning-fast HTML appending.</li>
<li>Offset Rewrite: Super-quick position calculation.</li>
<li>No More Browser Sniffing: Using feature detection to help jQuery last for many more years to come.</li>
</ul>
<p>The details of the release can be found via the <a href="http://docs.jquery.com/Release:jQuery_1.3">release notes</a>.</p>
<p>In addition to that, <a href="http://remysharp.com/">Remy Sharp</a> donated a new dynamic <a href="http://api.jquery.com/">API browser</a> to the jQuery project which makes searching the jQuery API extremely easy:</p>
<p><a href="http://api.jquery.com/"><img src="http://ajaxian.com/wp-content/uploads/jqueryapibrowser.jpg" alt="" title="jqueryapibrowser" width="300" height="217"/></a></p>
<p>The API browser includes:</p>
<ul>
<li>All the latest jQuery and jQuery UI documentation.	</li>
<li>The ability to mark pages as favorites for those pages you keep wanting to return to.	</li>
<li>Syntax highlighting in the code examples	</li>
<li>Live running of examples within the browser	</li>
<li>Links to edit and experiment with the code examples	</li>
</ul>
<p>In addition, <a href="http://digitalspaghetti.me.uk/">Tane Piper</a> &amp; Remy worked together to provide an <a href="http://api.jquery.com/">AIR app version of the browser</a> so you can view the API locally.</p>
<p>The biggest update though is that the jQuery projects (i.e. jQuery &amp; jQuery UI) will be part of the <a href="http://conservancy.softwarefreedom.org/">Software Freedom Conservancy</a> thus making the projects true non-profit endeavor and providing a number of benefits to both the project and the jQuery community including:</p>
<ol>
<li>It allows the current project members to continue to manage the projects and maintain ultimate responsibility for the direction of current and future efforts.</li>
<li>It allows the projects to be considered a true non-profit efforts allowing us to be able to accept donations and contributions without incurring tremendous personal financial liability.</li>
<li>The copyright of the code will be assigned to the conservancy thus ensuring that no single person will own contributions or assets of the project.</li>
<li>It may allow corporations to write off time when an employee contributes to a project.</li>
<li>Most importantly, it ensures that the jQuery projects will always be open and free software</li>
</ol>
<p>With so many new individuals &amp; corporations contributing to the project, doing this became a big priority to protect the investments made by the jQuery community.</p>
<p>This is a lot of great news for jQuery developers and here&#8217;s wishing jQuery a happy 3rd birthday.</p>
<div>
<a href="http://feeds.feedburner.com/~f/ajaxian?a=ZcPVRi.P"><img src="http://feeds.feedburner.com/~f/ajaxian?i=ZcPVRi.P" border="0"/></a> <a href="http://feeds.feedburner.com/~f/ajaxian?a=FVlVA3.P"><img src="http://feeds.feedburner.com/~f/ajaxian?i=FVlVA3.P" border="0"/></a> <a href="http://feeds.feedburner.com/~f/ajaxian?a=I5MZcf.p"><img src="http://feeds.feedburner.com/~f/ajaxian?i=I5MZcf.p" border="0"/></a>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2009/01/14/happy-birthday-jquery-v1-3-is-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

