<?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>Webmonkey &#187; UI/UX</title>
    <atom:link href="http://www.webmonkey.com/category/uiux/feed/" rel="self" type="application/rss+xml" />
    <link>http://www.webmonkey.com</link>
    <description>The Web Developer&#039;s Resource</description>
    <lastBuildDate>Fri, 05 Apr 2013 20:20:46 +0000</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <generator>http://wordpress.org/?v=3.4.2</generator>
    
    <item>
        <title>Creative UX Designs to Improve Web Forms</title>
        <link>http://www.webmonkey.com/2011/08/creative-ux-designs-to-improve-web-forms/</link>
        <comments>http://www.webmonkey.com/2011/08/creative-ux-designs-to-improve-web-forms/#comments</comments>
        <pubDate>Tue, 23 Aug 2011 15:49:26 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=51458</guid>
        		<category><![CDATA[UI/UX]]></category>
		<category><![CDATA[Visual Design]]></category>
		<category><![CDATA[forms]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2011/08/gowalla-form.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2011/08/gowalla-form.jpg" alt="Creative UX Designs to Improve Web Forms" /></div>We&#8217;ve looked at how the new HTML5 form tags improve the process of building web forms, but you don&#8217;t need to wait for better browser support to improve your forms today. Luke Wroblewski, web developer and co-founder of Bagcheck (which was recently acquired by Twitter), has a great post over at Smashing Magazine detailing various [...]]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><div id="attachment_51462" class="wp-caption aligncenter" style="width: 590px"><a href="http://www.webmonkey.com/wp-content/uploads/2011/08/gowalla-form.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2011/08/gowalla-form.jpg" alt="" title="gowalla-form" width="580" height="357" class="size-full wp-image-51462" /></a><p class="wp-caption-text">Extra options in Gowalla's login form</p></div>We&#8217;ve looked at how the new HTML5 form tags <a href="http://www.webmonkey.com/2011/08/a-guide-to-using-html5-forms/">improve the process of building web forms</a>, but you don&#8217;t need to wait for better browser support to improve your forms today. Luke Wroblewski, web developer and co-founder of <a href="http://bagcheck.com/">Bagcheck</a> (which was recently acquired by Twitter), has a great post over at Smashing Magazine detailing <a href="http://uxdesign.smashingmagazine.com/2011/08/22/new-approaches-to-designing-login-forms/">various ways of improving the ubiquitous login form</a>.</p>
<p>Pulling examples from <a href="http://gowalla.com/">Gowalla</a>, which helpfully provides your user id photo, <a href="http://www.quora.com/">Quora</a>, which immediately offers to create an account if your e-mail isn&#8217;t found, and his own Bagcheck, which is <a href="http://bagcheck.com/blog/02-design-solutions-for-new-log-in-problems">experimenting</a> with a drop down list of usernames as you type, Wroblewski&#8217;s post is an excellent tour of some of the best UX login forms on the web.</p>
<p>There is one important qualification for these forms &#8212; the assumption is that your site has public, searchable profile pages, otherwise exposing user data (like username or photo) would be a privacy no-no. Of course it&#8217;s worth considering that, while exposing usernames in the login forms might not actually violate anyone&#8217;s privacy (any more than a public profile already does), that doesn&#8217;t mean your users won&#8217;t <em>perceive</em> it as a privacy violation.</p>
<p>For those worried about security the same caveat applies. If your site already has public profile pages then you&#8217;re not exposing any data that can&#8217;t be found with a simple Google search. Provided your backend security protocols are built correctly, making a more usable login form won&#8217;t make your site any less secure.</p>
<p><strong>See Also:</strong><br/></p>
<ul>
<li><a href="http://www.webmonkey.com/2011/08/a-guide-to-using-html5-forms/">A Quick Guide to Using HTML5 Forms</a></li>
<li><a href="http://www.webmonkey.com/2010/11/working-with-forms-in-html5/">Working With Forms in HTML5</a></li>
<li><a href="http://www.webmonkey.com/2010/02/using-mad-libs-to-make-web-forms-more-fun/">Using ‘Mad Libs’ to Make Web Forms More Fun</a></li>
</ul>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2011/08/creative-ux-designs-to-improve-web-forms/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>Audit Your Site&#8217;s Content with &#8216;Page Trawler&#8217;</title>
        <link>http://www.webmonkey.com/2011/08/audit-your-sites-content-with-page-trawler/</link>
        <comments>http://www.webmonkey.com/2011/08/audit-your-sites-content-with-page-trawler/#comments</comments>
        <pubDate>Mon, 22 Aug 2011 16:58:45 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=51452</guid>
        		<category><![CDATA[UI/UX]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2011/08/pagetrawler.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2011/08/pagetrawler.jpg" alt="Audit Your Site&#8217;s Content with &#8216;Page Trawler&#8217;" /></div>Need a 50,000-foot overview of your website? Page Trawler is a new web service that will crawl your site and give you a bird&#8217;s eye view of your content. While the service is currently limited to crawling the first fifty pages of your site and offering up a .cvs summary of those pages, the developers [...]]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><a href="http://www.webmonkey.com/wp-content/uploads/2011/08/pagetrawler.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2011/08/pagetrawler.jpg" alt="" title="pagetrawler" width="180" height="181" class="alignleft size-full wp-image-51453" /></a>Need a 50,000-foot overview of your website? Page Trawler is a new web service that will crawl your site and give you a bird&#8217;s eye view of your content. While the service is currently limited to crawling the first fifty pages of your site and offering up a .cvs summary of those pages, the developers hope to turn Page Trawler into something much more useful.</p>
<p>If you&#8217;d like to try it out, head over to the <a href="http://www.pagetrawler.com/">Page Trawler site</a> and plug in a URL. Note that you&#8217;ll need to give up an email address to download the report.</p>
<p>The Page Trawler project, which lists itself as alpha software, began life as part of a contest to build something in a week, but the developers have big plans to turn the site into something more. Among the ideas are integrated analytics, heatmaps, detecting orphan content and, our personal favorite, unlimited bourbon. We&#8217;ll be sure to let you know when that last one becomes available, but in the mean time if you&#8217;ve got ideas for Page Trawler, head over to <a href="http://redgate.uservoice.com/forums/129997-pagetrawler">the UserVoice page</a> and let the developers know.</p>
<p><strong>See Also:</strong><br/></p>
<ul>
<li><a href="http://www.webmonkey.com/2011/05/speed-up-your-site-with-google-analytics-new-page-speed-tools/">Speed Up Your Site With Google Analytics New Page Speed Tools</a></li>
<li><a href="http://www.webmonkey.com/2011/07/googles-new-page-speed-service-promises-to-speed-up-your-website/">Google’s New Page Speed Service Promises to Speed Up Your Website</a></li>
<li><a href="http://www.webmonkey.com/2011/05/stop-typekit-fonts-from-slowing-down-your-site/">Stop Typekit Fonts From Slowing Down Your Site</a></li>
</ul>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2011/08/audit-your-sites-content-with-page-trawler/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>Is the iPad Sending Design Back to the Dark Ages?</title>
        <link>http://www.webmonkey.com/2010/10/is-the-ipad-sending-design-back-to-the-dark-ages/</link>
        <comments>http://www.webmonkey.com/2010/10/is-the-ipad-sending-design-back-to-the-dark-ages/#comments</comments>
        <pubDate>Mon, 18 Oct 2010 18:29:00 +0000</pubDate>

                <dc:creator>Michael Calore</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=48973</guid>
        		<category><![CDATA[UI/UX]]></category>
		<category><![CDATA[Visual Design]]></category>
		<category><![CDATA[Web Standards]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[user experience design]]></category>
        <description><![CDATA[Jeffrey Zeldman thinks so. In his essay, &#8220;iPad As the New Flash,&#8221; the author and standards guru argues that designers are now coding up device-centric user experiences at the expense of web standards, accessibility and the advancement of open web technologies. Everything we&#8217;ve learned in the past decade about preferring open standards to proprietary platforms [...]]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p>Jeffrey Zeldman thinks so. In his essay, &#8220;<a href="http://www.zeldman.com/2010/10/17/ipad-as-the-new-flash/">iPad As the New Flash</a>,&#8221; the author and standards guru argues that designers are now coding up device-centric user experiences at the expense of web standards, accessibility and the advancement of open web technologies.</p>
<blockquote><p>Everything we&#8217;ve learned in the past decade about preferring open standards to proprietary platforms and user-focused interfaces to masturbatory ones is forgotten as designers and publishers once again scramble to create novelty interfaces no one but them cares about.</p>
<p>While some of this will lead to useful innovation, particularly in the area of gestural interfaces, that same innovation can just as readily be accomplished on websites built with HTML, CSS, and JavaScript—and the advantage of creating websites instead of iPad apps is that websites work for everyone, on browsers and devices at all price points. That, after all, is the point of the web. It&#8217;s the point of web standards and progressive enhancement.</p>
</blockquote>
<p>He takes issue not with apps in general, but with the design choices being made by popular magazines as they rush to embrace the new shiny. His ultimate conclusion: &#8220;Masturbatory novelty is not a business strategy.&#8221;</p>
<p>The comments are enlightening, too. A few <a href="http://www.zeldman.com/2010/10/17/ipad-as-the-new-flash/#comment-56882">make</a> the <a href="http://www.zeldman.com/2010/10/17/ipad-as-the-new-flash/#comment-56886">point</a> that web standards like JavaScript and CSS can now be used to develop experiences that can be delivered both natively and through a browser. Another <a href="http://www.zeldman.com/2010/10/17/ipad-as-the-new-flash/#comment-56893">suggests</a> this is just the Old World struggling to understand a new platform.</p>
<p><strong>See also:</strong><br/></p>
<ul>
<li><a href="http://www.webmonkey.com/2010/05/who-needs-flash/">Who Needs Flash?</a></li>
<li><a href="http://www.webmonkey.com/2010/08/flashy-html5-experiments-point-to-webs-future/">Flashy HTML5 Experiments Point to Web’s Future</a></li>
<li><a href="http://www.webmonkey.com/2010/09/video-watch-flash-hand-html5-a-beating-on-mobiles/">Video: Watch Flash Hand HTML5 a Beating on Mobiles</a></li>
</ul>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2010/10/is-the-ipad-sending-design-back-to-the-dark-ages/feed/</wfw:commentRss>
        <slash:comments>16</slash:comments>

        
    </item>
    
    <item>
        <title>Take a Tour of the New Twitter</title>
        <link>http://www.webmonkey.com/2010/09/take-a-tour-of-the-new-twitter/</link>
        <comments>http://www.webmonkey.com/2010/09/take-a-tour-of-the-new-twitter/#comments</comments>
        <pubDate>Thu, 16 Sep 2010 18:58:06 +0000</pubDate>

                <dc:creator>Michael Calore</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=48740</guid>
        		<category><![CDATA[Social]]></category>
		<category><![CDATA[UI/UX]]></category>
		<category><![CDATA[Web Apps]]></category>
		<category><![CDATA[NewTwitter]]></category>
		<category><![CDATA[Twitter]]></category>
        <description><![CDATA[Twitter launched a full redesign to its website Tuesday, showing off changes that lead Twitter.com away from its humble stream-of-updates past and towards a more interactive, app-like future. The new Twitter went live to a select few users Tuesday afternoon and began rolling out to everyone else Wednesday. If you don&#8217;t see it yet, you [...]]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><a href="http://www.wired.com/images_blogs/epicenter/2010/09/NewTwitter1.jpg"><img src="http://www.wired.com/images_blogs/epicenter/2010/09/NewTwitter1.jpg" alt="" title="NewTwitter1" width="580" /></a></p>
<p>Twitter launched a <a href="http://www.wired.com/epicenter/2010/09/twitter-announces-media-rich-twitter/">full redesign to its website</a> Tuesday, showing off changes that lead Twitter.com away from its humble stream-of-updates past and towards a more interactive, app-like future.</p>
<p>The new Twitter went live to a select few users Tuesday afternoon and began rolling out to everyone else Wednesday. If you don&#8217;t see it yet, you will soon.</p>
<p>The website now has a new two-panel view. Your familiar stream of tweets runs down the left side. On the right side is a dashboard of sorts, where you can see recent activity from your followers and the people you follow, trending topics, and the list of people you might want to follow.</p>
<p><span id="more-48740"></span></p>
<p>Click on a tweet and it expands in the right panel. There, you&#8217;ll see rich media like photos and videos, associated conversations, recent tweets by the author, and mini bios for any other people mentioned in the tweet.</p>
<p><a href="http://www.wired.com/images_blogs/epicenter/2010/09/NewTwitter2.jpg"><img src="http://www.wired.com/images_blogs/epicenter/2010/09/NewTwitter2.jpg" alt="" title="NewTwitter2" width="580" /></a></p>
<p>Overall, the update plays on features found in popular Twitter client apps like Tweetdeck and Seesmic, and it looks quite a bit like the official Twitter app for the iPad. Somewhat like those apps, you can dive right into videos or photos without leaving the Twitter website, whereas the old site required you to leave the site or launch links in new browser tabs.</p>
<p>Scrolling in the timeline on the left panel is infinite. New tweets keep loading at the bottom as you scroll, so you can just keep cruising backwards into time as far as you&#8217;d like.</p>
<p><a href="http://www.wired.com/images_blogs/epicenter/2010/09/NewTwitter3.jpg"><img src="http://www.wired.com/images_blogs/epicenter/2010/09/NewTwitter3.jpg" alt="" title="NewTwitter3" width="580" /></a></p>
<p>When you expand a tweet by clicking on it, if there&#8217;s a video or a photo from a supported site (YouTube, Vimeo, Flickr and TwitPic were all included in Tuesday&#8217;s launch) it shows up nice and big. Videos play right there, and Flickr photos are accompanied by thumbnails to the rest of the photoset, if there is one. You can choose to see embedded photos and videos from only from people you&#8217;re following, or from everyone.</p>
<p><a href="http://www.wired.com/images_blogs/epicenter/2010/09/NewTwitter4.jpg"><img src="http://www.wired.com/images_blogs/epicenter/2010/09/NewTwitter4.jpg" alt="" title="NewTwitter4" width="580" /></a></p>
<p>Images, videos, maps and retweets are all carried over to the new individual tweet pages. &#8220;People can much more quickly grok the context of a tweet,&#8221; Twitter CEO Evan Williams said at the launch event Tuesday.</p>
<p><a href="http://www.wired.com/images_blogs/epicenter/2010/09/NewTwitter5.jpg"><img src="http://www.wired.com/images_blogs/epicenter/2010/09/NewTwitter5.jpg" alt="" title="NewTwitter5" width="580" /></a></p>
<p>To send a new tweet, you can either use the old box, still in its familiar location, if you&#8217;re on your home page. Or, if you&#8217;re elsewhere in the system, you can click on the little icon up next to your user profile picture to launch a floating window.</p>
<p>Something else very appy &#8212; Twitter has incorporated keyboard shortcuts.</p>
<p><a href="http://www.wired.com/epicenter/wp-content/gallery/newtwitter2/newtwitter6a.jpg"><img src="http://www.wired.com/epicenter/wp-content/gallery/newtwitter2/newtwitter6a.jpg" alt="" title="NewTwitter6" width="580" /></a></p>
<p>Keyboard shortcuts are definitely a geeky power user feature, but ask anyone who uses them in Google Reader or Gmail and they&#8217;ll tell you they can&#8217;t live without them. In fact, the keyboard shortcuts are very close to those apps.</p>
<p>@mentions are now accessible from a tab at the top of your timeline:</p>
<p><a href="http://www.wired.com/epicenter/wp-content/gallery/newtwitter2/newtwitter7.jpg"><img src="http://www.wired.com/epicenter/wp-content/gallery/newtwitter2/newtwitter7.jpg" alt="" title="NewTwitter7" width="580" /></a></p>
<p>As are retweets:</p>
<p><a href="http://www.wired.com/images_blogs/epicenter/2010/09/NewTwitter8.jpg"><img src="http://www.wired.com/images_blogs/epicenter/2010/09/NewTwitter8.jpg" alt="" title="NewTwitter8" width="580" /></a></p>
<p>There&#8217;s a new search box at the top of the page. Run searches and you can save them (click the &#8220;Save this search&#8221; button up top) to keep track of new results. Saved searches will then live in a tab next to Retweets at the top of your timeline.</p>
<p><a href="http://www.wired.com/images_blogs/epicenter/2010/09/NewTwitter9.jpg"><img src="http://www.wired.com/images_blogs/epicenter/2010/09/NewTwitter9.jpg" alt="" title="NewTwitter9" width="580" /></a></p>
<p>Lists are handy &#8212; I keep two or three that I browse every morning to catch up on tech news. Twitter has moved your lists into the last tab at the top of the timeline.</p>
<p><a href="http://www.wired.com/images_blogs/epicenter/2010/09/NewTwitter10.jpg"><img src="http://www.wired.com/images_blogs/epicenter/2010/09/NewTwitter10.jpg" alt="" title="NewTwitter9" width="580" /></a></p>
<p>The redesign uses some cutting-edge web technology, including <a href="http://labjs.com/">LABjs</a> to speed things up and <a href="http://jquery.com/">jQuery</a> for the animated, Ajaxy twiddly bits. Also: the awesome <a href="http://www.modernizr.com/">Modernizr</a> library, which checks your browser&#8217;s capability of handling different HTML5 doo-dads and adjusts the website&#8217;s code accordingly.</p>
<p>These changes show Twitter extending a big juicy lollipop to users &#8212; by providing people with a more rich experience directly inside the browser, there&#8217;s less of a reason to go download an app. This is bound to cheese off a good number of developers who have much blood and sweat (and cash) invested in their own Twitter client apps and web experiences. However, there&#8217;s still a place for those apps &#8212; Twitter has built this new interface on top of its own API, which means that any capable developer out there can do something very close to this design, or improve on it, on their own.</p>
<p>One big caveat: Twitter has the power to bypass its <a href="http://dev.twitter.com/pages/api_faq#rate_limit">API rate limit</a> of 20,000 requests per hour that it enforces for third-party applications. Only Twitter and selected partners can pull more tweets than that. These rates will change as Twitter grows, especially now that the service has got <a href="http://www.flickr.com/photos/twitteroffice/4990581534/sizes/l/in/photostream/">over 90 million tweets per day</a> to play with.</p>
<p>Also, it&#8217;s doubtful this update will coax users away from their favorite apps.</p>
<p>Many people who use the website to tweet &#8212; Williams says 78 percent of active users have used Twitter.com in the last 30 days &#8212; will likely adapt to this update rather than reject it and run to a different experience, like a Tweetdeck or Seesmic. It exposes much more information than they&#8217;re used to, but by and large, the changes are useful and add more contextual value than visual clutter.</p>
<p>So for people who have only ever used the old Twitter.com, or even those (like me) who use apps occasionally but heavily favor the website, this is a radical change, but a positive one.</p>
<p>Those endeared to their third-party apps will probably look at the new Twitter.com and say, &#8220;Huh, neat, looks more like my favorite app than the old site.&#8221; Then they&#8217;ll go back to their app and tweet about it.</p>
<p>What do you think of the redesign? Tell us in the comments.</p>
<p><strong>See Also:</strong></p>
<ul>
<li><a href="http://www.webmonkey.com/2010/09/does-oauths-complexity-alienate-small-apps/">Does OAuth&#8217;s Complexity Alienate Small Apps?</a></li>
<li><a href="http://www.webmonkey.com/2010/08/twitter-moves-to-oauth-the-oauthcalypse-is-nigh/">Twitter Moves to OAuth: The OAuthcalypse Is Nigh</a></li>
<li><a href="http://www.webmonkey.com/2010/06/twitter-now-lets-you-automatically-follow-your-facebook-friends/">Twitter Now Lets You Automatically Follow Your Facebook Friends</a></li>
<li><a href="http://www.wired.com/underwire/2010/04/twitter-wedding/">So Tweet: Geek Couple Plans Twitter Wedding</a></li>
<li><a href="http://www.wired.com/threatlevel/2010/02/jurors-stop-twittering/">Jurors: Stop Twittering</a></li>
</ul>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2010/09/take-a-tour-of-the-new-twitter/feed/</wfw:commentRss>
        <slash:comments>9</slash:comments>

        
    </item>
    
    <item>
        <title>Beautify Broken Links With Catch404</title>
        <link>http://www.webmonkey.com/2010/07/beautify-broken-links-with-catch404/</link>
        <comments>http://www.webmonkey.com/2010/07/beautify-broken-links-with-catch404/#comments</comments>
        <pubDate>Wed, 21 Jul 2010 22:47:41 +0000</pubDate>

                <dc:creator>Michael Calore</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=48090</guid>
        		<category><![CDATA[Ajax]]></category>
		<category><![CDATA[UI/UX]]></category>
		<category><![CDATA[404]]></category>
		<category><![CDATA[Catch404]]></category>
		<category><![CDATA[jQuery]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2010/07/Catch404.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2010/07/Catch404.jpg" alt="Beautify Broken Links With Catch404" /></div>The 404 error is one of the bitter realities of the web. &#8220;The page you&#8217;ve requested does not exist.&#8221; So cold and unforgiving. Unlike a bad database connection or an unresponsive server, the 404 Page Not Found error has a finality to it &#8212; this link is dead and it&#8217;s never coming back. But now [...]]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><a href="http://www.webmonkey.com/wp-content/uploads/2010/07/Catch404.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2010/07/Catch404.jpg" alt="" title="Catch404" /></a></p>
<p>The 404 error is one of the bitter realities of the web. </p>
<p>&#8220;The page you&#8217;ve requested does not exist.&#8221; So cold and unforgiving. Unlike a bad database connection or an unresponsive server, the 404 Page Not Found error has a finality to it &#8212; this link is dead and it&#8217;s never coming back.</p>
<p>But now we have <a href="http://addyosmani.com/blog/catch404/">Catch404</a> by Addy Osmani, a jQuery plug in that handles broken links with style. Deploy Catch404 on your site, and instead of seeing a page reporting a broken link, the user is presented with an Ajax modal window (also called a hop-up, or a lightbox) informing them the linked page isn&#8217;t there. The windows also offers some alternate destinations they might want to check out.</p>
<p>We&#8217;ve been trying to make 404s go down a little easier for years now. The <a href="http://www.plinko.net/404/area404.asp">custom 404 page</a> is a popular solution. It&#8217;s available on just about every web CMS out there. You can <a href="http://www.webmonkey.com/2010/02/create_custom_404_pages/">do it yourself</a>, too. Browsers are also taking it upon themselves to beautify the broken link with <a href="http://www.google.com/support/chrome/bin/answer.py?hl=en&#038;answer=95671">custom pages</a>, offering suggestions or inviting users to search for the page using a built-in search box.</p>
<p>Catch404 takes both of those ideas &#8212; the custom alert and the suggestions of what to do next &#8212; and places them into the user experience before the link is even loaded. The plugin, which requires the <a href="http://jquery.com/">jQuery framework</a>, sends the link off to Yahoo&#8217;s <a href="http://developer.yahoo.com/yql/">YQL engine</a> to check to make sure it&#8217;s alive. It only performs this check for external URLs; local URLs don&#8217;t require the check. The check is performed behind the scenes, using an Ajax request. If all is good, the user goes about his or her way. If the check results in a 404, the user sees the modal window.</p>
<p><a href="http://www.addyosmani.com/resources/catch404/catch404.html">Here&#8217;s a demo</a>.</p>
<p>You&#8217;ll notice one obvious downside, which is that your users will have to wait an extra half-second or so while the YQL call completes. So why use it? </p>
<p>When a user is browsing your site and clicks on a link you&#8217;ve provided, then sees a 404 error, it&#8217;s your problem whether you&#8217;re responsible or not. Linking to dead pages makes you look like a sloppy curator, and the user will place some, if not all, of the blame for that error on you. Catch404 is more helpful than an impersonal error.</p>
<p>If the speed hit from the cross-site link checking bothers you, consider adding Catch404 only to legacy content &#8212; those years-old pages filled with links that may or may not still be alive.</p>
<p>Activating Catch404 is simply a matter of assigning a class to the link, so you can invoke it only where it makes sense.</p>
<p>[via <a href="http://delicious.com/url/108e932c9bb78f60d8f2eff6090100e0">Delicious</a>]</p>
<p><b>See Also:</b></p>
<ul>
<li><a href="http://www.webmonkey.com/2010/02/get_started_with_jquery/">Get Started With JQuery</a></li>
<li><a href="http://www.webmonkey.com/2010/01/jquery_celebrates_4_years_on_the_web_with_jquery_1dot4/">JQuery Celebrates 4 Years on the Web With New Release</a></li>
<li><a href="http://www.webmonkey.com/2010/07/the-solar-system-rendered-in-css-and-html/">The Solar System, Rendered in CSS and HTML</a></li>
</ul>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2010/07/beautify-broken-links-with-catch404/feed/</wfw:commentRss>
        <slash:comments>2</slash:comments>

        
    </item>
    
    <item>
        <title>Get Free Design Advice From Not Pixel Perfect Yet</title>
        <link>http://www.webmonkey.com/2010/07/get-free-design-advice-from-not-pixel-perfect-yet/</link>
        <comments>http://www.webmonkey.com/2010/07/get-free-design-advice-from-not-pixel-perfect-yet/#comments</comments>
        <pubDate>Tue, 20 Jul 2010 20:50:30 +0000</pubDate>

                <dc:creator>Michael Calore</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=48073</guid>
        		<category><![CDATA[UI/UX]]></category>
		<category><![CDATA[Visual Design]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[Not Pixel Perfect Yet]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2010/07/notpixelperfectyet.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2010/07/notpixelperfectyet.jpg" alt="Get Free Design Advice From Not Pixel Perfect Yet" /></div>The web is long on opinion, but short on informed, constructive criticism. Thank goodness then for Not Pixel Perfect Yet, a group of web experts who will critique your website&#8217;s design in public for free, offering helpful suggestions and advice on improving your site&#8217;s design, readability and usability. The group is made up of 10 [...]]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><a href="http://www.webmonkey.com/wp-content/uploads/2010/07/notpixelperfectyet.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2010/07/notpixelperfectyet.jpg" alt="" title="notpixelperfectyet" /></a></p>
<p>The web is long on opinion, but short on informed, constructive criticism.</p>
<p>Thank goodness then for <a href="http://www.facebook.com/pages/Not-pixel-perfect-yet/114849155206436">Not Pixel Perfect Yet</a>, a group of web experts who will critique your website&#8217;s design in public for free, offering helpful suggestions and advice on improving your site&#8217;s design, readability and usability.</p>
<p>The group is made up of 10 or so Czech web designers who are skilled in graphic design, UI/UX and search optimization.</p>
<p>You submit a link to the group by<br />
 e-mail (feedback@divdesign.cz) telling them what areas you&#8217;d like them to critique. If your site is chosen, they&#8217;ll post a screenshot of your design to their Facebook page. The different members of the group will all chip in and provide comments about your font choices, your use of CSS, the way you use images, your logo &#8212; anything you want to improve. They pick one site per week.</p>
<p>All of the discussion happens in the open on Facebook, and since the group is public, anyone can join the group and participate in the discussion. Even better, everyone on the web can view the Not Pixel Perfect Yet critiques, making the group a valuable learning tool for budding web designers or anyone struggling with basic design challenges.</p>
<p>A couple of caveats &#8212; first, the designers are all Czech, so the responses are usually written in Czech. But the team members speak English and can comment on your site in English if you ask. For the critiques that are written in Czech, <a href="http://translate.google.com/#">Google Translate</a> does a decent enough job of getting the point across. If you&#8217;re using Chrome, the browser will offer to translate the page automatically.</p>
<p>Second, if you just look at the Wall posts, you won&#8217;t see much beyond a few sentences about each design. You need to click over to the &#8220;Discussions&#8221; tab to get to the meatier comments.</p>
<p>Facebook is probably not the best forum for the NPPY mission. The public flow of comments is nice, but you have to be a Facebook member to comment, and the tabbed interface is wonky. Some folks on Twitter are asking the group members to move it somewhere other than Facebook, and NPPY leader Nikol Kokesova says she is considering starting a blog.</p>
<p>You can see a full list of the members at <a href="http://milancermak.posterous.com/not-pixel-perfect-yet">A Digital Moleskine</a>, where blogger Milan Cermak has posted links to NPPY&#8217;s Twitter feeds, and where I originally learned about the project. There&#8217;s also a <a href="http://twitter.com/milancermak/nppy">NPPY Twitter list</a> you can follow.</p>
<p><b>See Also:</b></p>
<ul>
<li><a href="http://www.webmonkey.com/2010/06/design-for-readability-first/">Design for Readability First</a></li>
<li><a href="http://www.webmonkey.com/2010/07/video-top-5-mistakes-of-massive-css/">Video: Top 5 Mistakes of Massive CSS</a></li>
<li><a href="http://www.webmonkey.com/2010/04/test-your-websites-in-ipad-peek-save-yourself-500/">Test Your Websites in iPad Peek, Save Yourself $500</a></li>
<li><a href="http://www.webmonkey.com/2010/02/information_architecture_tutorial/">Information Architecture Tutorial</a></li>
</ul>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2010/07/get-free-design-advice-from-not-pixel-perfect-yet/feed/</wfw:commentRss>
        <slash:comments>4</slash:comments>

        
    </item>
    
    <item>
        <title>Video: Top 5 Mistakes of Massive CSS</title>
        <link>http://www.webmonkey.com/2010/07/video-top-5-mistakes-of-massive-css/</link>
        <comments>http://www.webmonkey.com/2010/07/video-top-5-mistakes-of-massive-css/#comments</comments>
        <pubDate>Wed, 14 Jul 2010 23:23:38 +0000</pubDate>

                <dc:creator>Michael Calore</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=48019</guid>
        		<category><![CDATA[CSS]]></category>
		<category><![CDATA[UI/UX]]></category>
		<category><![CDATA[Velocity]]></category>
		<category><![CDATA[video]]></category>
        <description><![CDATA[Huge CSS files can gunk up your page loads, creating annoying wait times for your readers and (if things get really bad) even driving people away before the page fully loads. The trick to avoiding breaking your user experience is to make your CSS as lean, clean and fast as possible. There are tried and [...]]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p>Huge CSS files can gunk up your page loads, creating annoying wait times for your readers and (if things get really bad) even driving people away before the page fully loads.</p>
<p>The trick to avoiding breaking your user experience is to make your CSS as lean, clean and fast as possible. There are tried and true techniques for <a href="http://www.webmonkey.com/2010/02/site_optimization_tutorial/">speeding things up</a>, like using Gzip, or serving one or two files instead of dozens. There are also poor optimization methods you should avoid.</p>
<p>Today, we bring you an informative video from the recent <a href="http://en.oreilly.com/velocity2010">2010 O&#8217;Reilly Velocity</a> conference on how to optimize CSS while avoiding some of the most common mistakes developers make. It&#8217;s especially useful for those of you with big CSS payloads. The first speaker is a little dry, but the fun picks up when Nicole Sullivan takes over about five minutes in.</p>
<p><object width="560" height="340"><param name="movie" value="http://www.youtube.com/v/j6sAm7CLoCQ&amp;hl=en_US&amp;fs=1?hd=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/j6sAm7CLoCQ&amp;hl=en_US&amp;fs=1?hd=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="340"></embed></object></p>
<p><b>See Also:</b></p>
<ul>
<li><a href="http://www.webmonkey.com/2010/07/advice-from-the-css-guru-embrace-prefixes/">Advice From the CSS Guru: Embrace Prefixes</a></li>
<li><a href="http://www.webmonkey.com/2007/07/got_slow_web_pages_find_out_why_with_yslow/">Got Slow Web Pages? Find Out Why With YSlow</a></li>
<li><a href="http://www.webmonkey.com/2010/06/dealing-with-browser-differences-in-css-3/">Dealing With Browser Differences in CSS 3</a></li>
</ul>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2010/07/video-top-5-mistakes-of-massive-css/feed/</wfw:commentRss>
        <slash:comments>5</slash:comments>

        
    </item>
    
    <item>
        <title>Test Your Websites in iPad Peek, Save Yourself $500</title>
        <link>http://www.webmonkey.com/2010/04/test-your-websites-in-ipad-peek-save-yourself-500/</link>
        <comments>http://www.webmonkey.com/2010/04/test-your-websites-in-ipad-peek-save-yourself-500/#comments</comments>
        <pubDate>Mon, 05 Apr 2010 20:52:34 +0000</pubDate>

                <dc:creator>Michael Calore</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=47103</guid>
        		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[UI/UX]]></category>
		<category><![CDATA[Web Apps]]></category>
		<category><![CDATA[iPad]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2010/04/ipadpeek.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2010/04/ipadpeek.jpg" alt="Test Your Websites in iPad Peek, Save Yourself $500" /></div>Want to see what your website looks like on the iPad? Get a load of iPad Peek, a new web-based emulator that shows you how any site renders on the new Apple device. Click on the black frame above the browser to switch between landscape and portrait modes. You can also test your web forms [...]]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled --><img src="http://www.webmonkey.com/wp-content/uploads/2010/04/ipadpeek.jpg" alt="ipadpeek" title="ipadpeek" /></p>
<p>Want to see what your website looks like on the iPad? Get a load of <a href="http://ipadpeek.com/">iPad Peek</a>, a new web-based emulator that shows you how any site renders on the new Apple device.</p>
<p>Click on the black frame above the browser to switch between landscape and portrait modes. You can also test your web forms by mouse-typing on the virtual virtual keyboard.</p>
<p>iPad Peek has a few limitations. There&#8217;s no touch scrolling, ads produce pop-ups, and embedded Flash videos and objects will still render inside the emulator even though the real iPad doesn&#8217;t do Flash. So, it&#8217;s basically a Webkit wrapper set to a fixed width and height. But, it does give you a pretty close approximation of how your site will look on the new shiny.</p>
<p>Also, <a href="http://mashable.com/2010/04/05/ipad-peek/">Mashable</a> has instructions for changing your Firefox user input string to that of the iPad:</p>
<blockquote><p>
Type &#8220;about:config&#8221; in the address bar, click the right mouse button, select New – String, and name it &#8220;general.useragent.override&#8221;. Then enter the value &#8220;Mozilla/5.0 (iPad; U; CPU OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B334b Safari/531.21.10&#8243;.
</p></blockquote>
<p><b>See Also:</b></p>
<ul>
<li><a href="http://www.webmonkey.com/2010/04/apple-taunts-flash-with-list-of-ipad-ready-websites/">Apple Taunts Flash With List of &#8216;iPad Ready&#8217; Websites</a></li>
<li><a href="http://www.webmonkey.com/2010/02/why_flash_isn_t_going_anywhere__ipad_be_damned/">Why Flash Isn&#8217;t Going Anywhere, iPad Be Damned</a></li>
</ul>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2010/04/test-your-websites-in-ipad-peek-save-yourself-500/feed/</wfw:commentRss>
        <slash:comments>16</slash:comments>

        
    </item>
    
    <item>
        <title>Information Architecture Tutorial &#8211; Lesson 5</title>
        <link>http://www.webmonkey.com/2010/02/information_architecture_tutorial_-_lesson_5/</link>
        <comments>http://www.webmonkey.com/2010/02/information_architecture_tutorial_-_lesson_5/#comments</comments>
        <pubDate>Tue, 16 Feb 2010 01:45:47 +0000</pubDate>

                <dc:creator>Webmonkey Staff</dc:creator>

        <guid isPermaLink="false">http://stag.wired.com/primate/?p=661</guid>
        		<category><![CDATA[UI/UX]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[wiki]]></category>
        <description><![CDATA[Visual Design By now you know a number of things about your site:why you are building it, who the audience is, what will be on the site (i.e., the content), and how the whole thing is structured. You are now ready to work on the visual design, which is often the most satisfying aspect of [...]]]></description>

            <content:encoded><![CDATA[<!-- wpautop disabled --><p><b>Visual Design</b>

</p><p>By now you know a number of things about your site:why you are building it, who the audience is, what will be on the site (i.e., the content), and how the whole thing is structured. You are now ready to work on the visual design, which is often the most satisfying aspect of site design.

</p><p>One of its main purposes is to provide users with a sense of place. They need to know where they are on the site, where they have been, and how to get to where they want to be. A good site structure combined with an effective visual design enables users to construct a mental map of the site.

</p><p>The goal of this lesson is to take the site&#8217;s structure and map it onto the visual design. A number of tools are useful in creating the design. The first step is to make layout grids that define the structure and organization of the site as it will show up on the page level. Then design sketches will establish a general look and feel. Layout grids and design sketches together lead to page mock-ups, which in turn lead to the construction of Web-based prototypes.

</p><p>At this point, you&#8217;ll need the help of graphic designers, art directors, and creative directors, as well as your production crew.

</p><span id="more-661"></span>

<table id="toc" class="toc" summary="Contents"><tbody><tr><td><div id="toctitle"><h2>Contents</h2> </div>



<ol>

<li><a href="#Layout_Grids">Layout Grids</a></li>

<li><a href="#Design_Sketches_and_Page_Mock-ups">Design Sketches and Page Mock-ups</a></li>

<li><a href="#Design_Document">Design Document</a></li>



</ol>



</td></tr></tbody></table>

<a name="Layout_Grids"></a><h4> <span class="mw-headline">Layout Grids</span></h4>

<p>Layout grids are templates that describe Web pages. Content &#8211; the focus of every page &#8211; requires prominent placement. You&#8217;ll need to block out space for global and local navigation and integrate other aspects of the site that may not be part of the site structure. The company&#8217;s brand must be present on each page. Advertising and sponsorship deals should be incorporated into the design. Here is an example of a layout grid:

</p><p><img src="http://www.wired.com/wired/webmonkey/stuff/Information_Architecture_Tutorial_layout.gif" alt="Information_Architecture_Tutorial_layout.gif">

</p><p>To get started, take the site structure listing and make a list of all the possible page types. Individual pages within the site should be very similar in form across all the major sections. Review the content inventory, then try coming up with two or three generic page types. You&#8217;ll start by designing these and then use them as the basis for all the other page types.

</p><p>To begin, break out your sketch pad or favorite graphics program. Create a rectangle representing the page, and block out the elements of your design. Since content is the most important element, start with that &#8211; even though it&#8217;s a little tricky, since you won&#8217;t yet know what else will be on the page. Several other elements must be considered:branding, advertising and sponsorship, navigation, page titles, header graphics, and footers, which include copyrights.

</p><p>Branding plays a prominent role on every page because it informs users that they are still on the site. A common place for the branding is in a page&#8217;s upper left-hand corner.

</p><p>Advertising and sponsorship can be integrated in a number of ways. Perhaps you have a full-sized ad banner (typically 468 by 60 pixels) on every page. Do you put it at the top? Do you put it under the title of each page? How do you integrate sponsorship? Is sponsorship integrated into the graphics headers on each page? Is there a small sponsorship logo at the bottom of each page? These are all questions you need to answer.

</p><p>Finally, navigation also has to play a prominent role. Global navigation must be consistent across every page of the site. Local navigation systems can change, depending on the content, but try to be as consistent as possible.

</p><p>This is an iterative process. You will need to revise the layout grids several times. You will probably want to do two or three different styles for the layout, if you have time.

</p>

<a name="Design_Sketches_and_Page_Mock-ups"></a><h4> <span class="mw-headline">Design Sketches and Page Mock-ups</span></h4>



<p>Design sketches are used to establish the look and feel of the site. They can be integrated with the metaphor or site structure rationale, but this isn&#8217;t always necessary. Often, they are done concurrently with the rest of the information-architecture process, so you may already have the design sketches worked out and approved by the client.

</p><p>The sketches don&#8217;t necessarily need to represent structure or organization. However, the graphic designers do need to know the size of the graphics files, as well as any technical constraints.

</p><p>The next step is to create page mock-ups, which represent the actual site, by integrating the design sketches with the layout grids. These should be as close to the actual pages as possible. Use your favorite graphics program to break up your sketches. Try cutting and pasting the pieces over their respective parts of the layout grids. Another option is to build the page mock-ups in HTML, using the pieces of the design sketches as the graphics.

</p><p>The page mock-ups are the basis for a Web-based prototype or, if your site is small enough, the basis for building the actual site. Page mock-ups need to be approved by the client, although it may be sufficient to have approval on the site structure and design sketches in order for you to move forward with the prototypes.

</p><p>You have now completed the steps in shaping the information architecture for your site! You have all the materials you need to construct a prototype, and everything else should fall into place. Before you dive into prototyping, add one last entry to your design document.

</p>

<a name="Design_Document"></a><h4> <span class="mw-headline">Design Document</span></h4>

<p>You are almost done. You just need to document the visual design of the site. Create a new chapter in your design document called Visual Design. Document the layout grids, and be sure to include the diagrams you made. Compile the design sketches, and add those, as well as the pictures of the page mock-ups, to the document. Include snapshots from the Web-based prototype, if you can. The design document is now complete, providing a thorough description of the site&#8217;s design. It will be useful in constructing the site, for adding content, and in revising the site when the time inevitably comes.

</p>

<pre class="brush: js">Example:

5 Visual Design

5.1 Layout Grids

5.2 Design Sketches

5.3 Page Mock-ups

5.4 Web-based Prototype

</pre>

<p>You have just completed the last lesson. Now all it takes to be a true information architect is a lot of practice.

</p><p><br />







<div id="series">

<div class="series_hdr">From the series</div>

<table style="background: rgb(229, 249, 255) none repeat scroll 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;" width="620">

<tbody><tr>

<td>

<p><a href="/2010/02/Information_Architecture_Tutorial" title="Tutorial:Information Architecture Tutorial"> Information Architecture Tutorial</a><br />

<a href="/2010/02/Information_Architecture_Tutorial_-_Lesson_1" title="Tutorial:Information Architecture Tutorial - Lesson 1"> Information Architecture Tutorial &#8211; Lesson 1</a><br />

<a href="/2010/02/Information_Architecture_Tutorial_-_Lesson_2" title="Tutorial:Information Architecture Tutorial - Lesson 2"> Information Architecture Tutorial &#8211; Lesson 2</a><br />



<a href="/2010/02/Information_Architecture_Tutorial_-_Lesson_3" title="Tutorial:Information Architecture Tutorial - Lesson 3"> Information Architecture Tutorial &#8211; Lesson 3</a><br />

<a href="/2010/02/Information_Architecture_Tutorial_-_Lesson_4" title="Tutorial:Information Architecture Tutorial - Lesson 4"> Information Architecture Tutorial &#8211; Lesson 4</a><br />

<strong class="selflink"> Information Architecture Tutorial &#8211; Lesson 5</strong>

</p>

</td></tr></tbody></table>

</div><div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2010/02/information_architecture_tutorial_-_lesson_5/feed/</wfw:commentRss>
        <slash:comments>2</slash:comments>

        
    </item>
    
    <item>
        <title>Live Thumbnails</title>
        <link>http://www.webmonkey.com/2010/02/live_thumbnails/</link>
        <comments>http://www.webmonkey.com/2010/02/live_thumbnails/#comments</comments>
        <pubDate>Tue, 16 Feb 2010 01:45:47 +0000</pubDate>

                <dc:creator>Webmonkey Staff</dc:creator>

        <guid isPermaLink="false">http://stag.wired.com/primate/?p=434</guid>
        		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[UI/UX]]></category>
		<category><![CDATA[wiki]]></category>
        <description><![CDATA[This is the JavaScript example from the Webmonkey tutorial Make Images Grow and Shrink With JavaScript. This script will allow you to put &#8220;live thumbnails&#8221; of images on your website. The thumbnails will grow and shrink when users click on them. &#60;script type="text/javascript"&#62; var links = document.getElementsByTagName('a'); for (var i = 0; i &#60; links.length; [...]]]></description>

            <content:encoded><![CDATA[<!-- wpautop disabled --><p>This is the JavaScript example from the Webmonkey tutorial <a href="/2010/02/Make_Images_Grow_and_Shrink_With_JavaScript" title="Tutorial:Make Images Grow and Shrink With JavaScript"> Make Images Grow and Shrink With JavaScript</a>. This script will allow you to put &#8220;live thumbnails&#8221; of images on your website. The thumbnails will grow and shrink when users click on them.

</p><p><br />
<span id="more-434"></span>
</p>

<pre class="brush: js">&lt;script type="text/javascript"&gt;



var links = document.getElementsByTagName('a');



for (var i = 0; i &lt; links.length; i++)

	if (links[i].className == 'livethumbnail')

	{

		var img = links[i].getElementsByTagName('img')[0];

		img.state = 'small';

		img.smallSrc = img.getAttribute('src');

		img.smallWidth = parseInt(img.getAttribute('width'));

		img.smallHeight = parseInt(img.getAttribute('height'));

		img.largeSrc = links[i].getAttribute('href');

		img.largeWidth = parseInt(img.getAttribute('largewidth'));

		img.largeHeight = parseInt(img.getAttribute('largeheight'));

		img.ratio = img.smallHeight / img.smallWidth;

		links[i].onclick = scale;

	}



function scale()

{

	var img = this.getElementsByTagName('img')[0];

	img.src = img.smallSrc;



	if (! img.preloaded)

	{

		img.preloaded = new Image();

		img.preloaded.src = img.largeSrc;

	}



	var interval = window.setInterval(scaleStep, 10);

	return false;



	function scaleStep()

	{

		var step = 10;

		var width = parseInt(img.getAttribute('width'));

		var height = parseInt(img.getAttribute('height'));



		if (img.state == 'small')

		{

			width += step;

			height += Math.floor(step * img.ratio);



			img.setAttribute('width', width);

			img.setAttribute('height', height);



			if (width &gt; img.largeWidth - step)

			{

				img.setAttribute('width', img.largeWidth);

				img.setAttribute('height', img.largeHeight);

				img.setAttribute('src', img.largeSrc);

				window.clearInterval(interval);

				img.state = 'large';

			}

		}

		else

		{

			width -= step;

			height -= Math.floor(step * img.ratio);



			img.setAttribute('width', width);

			img.setAttribute('height', height);



			if (width &lt; img.smallWidth + step)

			{

				img.setAttribute('width', img.smallWidth);

				img.setAttribute('height', img.smallHeight);

				img.src = img.smallSrc;

				window.clearInterval(interval);

				img.state = 'small';

			}

		}

	}

}





&lt;/script&gt;

</pre><div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2010/02/live_thumbnails/feed/</wfw:commentRss>
        <slash:comments>1</slash:comments>

        
    </item>
    </channel>
</rss>