<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Onion Skinned Drop Shadows with JavaScript</title>
	<atom:link href="http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript/feed" rel="self" type="application/rss+xml" />
	<link>http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript</link>
	<description>Cleaning up the web with Ajax</description>
	<lastBuildDate>Thu, 17 May 2012 07:43:39 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
	<item>
		<title>By: 15 Days Of jQuery : Wrap It Up - Lazy Man&#8217;s HTML Generation With jQuery</title>
		<link>http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript/comment-page-1#comment-16975</link>
		<dc:creator>15 Days Of jQuery : Wrap It Up - Lazy Man&#8217;s HTML Generation With jQuery</dc:creator>
		<pubDate>Tue, 30 May 2006 03:06:29 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript#comment-16975</guid>
		<description>[...] From the jQuery site there&#8217;s a link to the Ajaxian website where another javascript library was used to create the Onion Skin Drop Shadow with javascript and I think the amount of code and the complexity of the code speaks for itself. Personally, I would prefer jQuery (but you already guessed that, didn&#8217;t you?) [...]</description>
		<content:encoded><![CDATA[<p>[...] From the jQuery site there&#8217;s a link to the Ajaxian website where another javascript library was used to create the Onion Skin Drop Shadow with javascript and I think the amount of code and the complexity of the code speaks for itself. Personally, I would prefer jQuery (but you already guessed that, didn&#8217;t you?) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: links for 2006-02-03 at bluno.org</title>
		<link>http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript/comment-page-1#comment-3091</link>
		<dc:creator>links for 2006-02-03 at bluno.org</dc:creator>
		<pubDate>Sun, 05 Feb 2006 19:40:53 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript#comment-3091</guid>
		<description>[...] Ajaxian Â» Onion Skinned Drop Shadows with JavaScript (tags: css javascript) [...]</description>
		<content:encoded><![CDATA[<p>[...] Ajaxian Â» Onion Skinned Drop Shadows with JavaScript (tags: css javascript) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Schot in de zaak&#8230; &#187; Blog Archive &#187; Schaduws maken met CSS</title>
		<link>http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript/comment-page-1#comment-2730</link>
		<dc:creator>Schot in de zaak&#8230; &#187; Blog Archive &#187; Schaduws maken met CSS</dc:creator>
		<pubDate>Tue, 24 Jan 2006 19:24:06 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript#comment-2730</guid>
		<description>[...] Je had waarschijnlijk allang gehoord van union skins , maar nu kan dat ook met AJAX (trendy woord voor javascripts). Check: dit. [...]</description>
		<content:encoded><![CDATA[<p>[...] Je had waarschijnlijk allang gehoord van union skins , maar nu kan dat ook met AJAX (trendy woord voor javascripts). Check: dit. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Onion Skinned Drop Shadows with JavaScript &#8212; Sam&#8217;s random musings Archive</title>
		<link>http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript/comment-page-1#comment-2681</link>
		<dc:creator>Onion Skinned Drop Shadows with JavaScript &#8212; Sam&#8217;s random musings Archive</dc:creator>
		<pubDate>Mon, 23 Jan 2006 16:16:41 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript#comment-2681</guid>
		<description>[...] Onion Skinned Drop Shadows with JavaScript: [...]</description>
		<content:encoded><![CDATA[<p>[...] Onion Skinned Drop Shadows with JavaScript: [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gilles Dubois Bookmarks &#187; links for 2006-01-21</title>
		<link>http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript/comment-page-1#comment-2656</link>
		<dc:creator>Gilles Dubois Bookmarks &#187; links for 2006-01-21</dc:creator>
		<pubDate>Sat, 21 Jan 2006 04:26:24 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript#comment-2656</guid>
		<description>[...] Ajaxian Â» Onion Skinned Drop Shadows with JavaScript (tags: css)     &#160; [...]</description>
		<content:encoded><![CDATA[<p>[...] Ajaxian Â» Onion Skinned Drop Shadows with JavaScript (tags: css)     &nbsp; [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bob Aman</title>
		<link>http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript/comment-page-1#comment-2647</link>
		<dc:creator>Bob Aman</dc:creator>
		<pubDate>Fri, 20 Jan 2006 20:15:59 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript#comment-2647</guid>
		<description>Oooops, meant that comment to be on the jQuery page.  :-/</description>
		<content:encoded><![CDATA[<p>Oooops, meant that comment to be on the jQuery page.  :-/</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bob Aman</title>
		<link>http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript/comment-page-1#comment-2646</link>
		<dc:creator>Bob Aman</dc:creator>
		<pubDate>Fri, 20 Jan 2006 20:15:22 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript#comment-2646</guid>
		<description>Downloads seem to be broken again.  Just a comment in the source code, and nothing more.</description>
		<content:encoded><![CDATA[<p>Downloads seem to be broken again.  Just a comment in the source code, and nothing more.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Monkey Dog</title>
		<link>http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript/comment-page-1#comment-2629</link>
		<dc:creator>Monkey Dog</dc:creator>
		<pubDate>Fri, 20 Jan 2006 16:50:05 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript#comment-2629</guid>
		<description>I thought Teddy Bears and My Little Pony were mortal enemies.  What gives?</description>
		<content:encoded><![CDATA[<p>I thought Teddy Bears and My Little Pony were mortal enemies.  What gives?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ResourceBlog &#187; Onion Skinned Drop Shadows with JavaScript</title>
		<link>http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript/comment-page-1#comment-2623</link>
		<dc:creator>ResourceBlog &#187; Onion Skinned Drop Shadows with JavaScript</dc:creator>
		<pubDate>Fri, 20 Jan 2006 14:25:41 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript#comment-2623</guid>
		<description>[...] This article describes a way to add drop shadows to images using a simple Javascript wrapper. Includes source and demo.    Filed under: CSS, Javascript, Site Design &#8212; [...]</description>
		<content:encoded><![CDATA[<p>[...] This article describes a way to add drop shadows to images using a simple Javascript wrapper. Includes source and demo.    Filed under: CSS, Javascript, Site Design &#8212; [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Free Hogg &#187; links for 2006-01-20</title>
		<link>http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript/comment-page-1#comment-2611</link>
		<dc:creator>Free Hogg &#187; links for 2006-01-20</dc:creator>
		<pubDate>Fri, 20 Jan 2006 02:21:50 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript#comment-2611</guid>
		<description>[...] Onion Skinned Drop Shadows with JavaScript (tags: javascript Design web tutorial) [...]</description>
		<content:encoded><![CDATA[<p>[...] Onion Skinned Drop Shadows with JavaScript (tags: javascript Design web tutorial) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bob Aman</title>
		<link>http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript/comment-page-1#comment-2608</link>
		<dc:creator>Bob Aman</dc:creator>
		<pubDate>Fri, 20 Jan 2006 00:43:20 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript#comment-2608</guid>
		<description>I created a test page in case anyone wants to check performance.  Link is on the article page.  I don&#039;t have IE handy to test with, so I&#039;m not sure how well it&#039;d do on a page with 440 Papa Smurfs in drop shadowed wonderousness, but Firefox seems to have come through it just fine.

So I&#039;m feeling optimistic.</description>
		<content:encoded><![CDATA[<p>I created a test page in case anyone wants to check performance.  Link is on the article page.  I don&#8217;t have IE handy to test with, so I&#8217;m not sure how well it&#8217;d do on a page with 440 Papa Smurfs in drop shadowed wonderousness, but Firefox seems to have come through it just fine.</p>
<p>So I&#8217;m feeling optimistic.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bob Aman</title>
		<link>http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript/comment-page-1#comment-2596</link>
		<dc:creator>Bob Aman</dc:creator>
		<pubDate>Thu, 19 Jan 2006 19:53:41 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript#comment-2596</guid>
		<description>The performance concern is probably valid.  I&#039;ll have to do some real world testing, but I would point out that if you&#039;re drop shadowing more than, say, 10 elements on a page, you&#039;re probably looking at a lousy design that&#039;s overly busy anyhow.

And I should probably make this thing compatible with IE now that it&#039;s, you know, getting lots of attention.  :-/</description>
		<content:encoded><![CDATA[<p>The performance concern is probably valid.  I&#8217;ll have to do some real world testing, but I would point out that if you&#8217;re drop shadowing more than, say, 10 elements on a page, you&#8217;re probably looking at a lousy design that&#8217;s overly busy anyhow.</p>
<p>And I should probably make this thing compatible with IE now that it&#8217;s, you know, getting lots of attention.  :-/</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob</title>
		<link>http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript/comment-page-1#comment-2592</link>
		<dc:creator>Rob</dc:creator>
		<pubDate>Thu, 19 Jan 2006 17:29:40 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript#comment-2592</guid>
		<description>that may be the greatest image ever posted on ajaxian.</description>
		<content:encoded><![CDATA[<p>that may be the greatest image ever posted on ajaxian.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Scott Schiller</title>
		<link>http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript/comment-page-1#comment-2587</link>
		<dc:creator>Scott Schiller</dc:creator>
		<pubDate>Thu, 19 Jan 2006 16:43:31 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript#comment-2587</guid>
		<description>The code is clean (and example image.. humorous.) An 80&#039;s child, perhaps? ;)

I wonder about performance degradation with script like this, however. (I used to come across this myself, when writing various bits of JS for allowing PNGs in IE without the proprietary markup for example, rounded corners via JS etc.)

The DOM can be rather slow in varying cases as PPK (&lt;a href=&quot;http://www.quirksmode.org/&quot; rel=&quot;nofollow&quot;&gt;quirksmode.org&lt;/a&gt;) and others have shown, and performance can degrade quite quickly when elements are being inserted on-the-fly via javascript. If a significant number of these images were in a single page, I would expect it would render quite slowly. (Before/after window.onload and timing etc. is another debate.)

Obviously, the benefit of this scripted method is avoiding having extra markup within the in-page HTML itself.

What I might try alternately is creating a static &quot;image shadow&quot; template, which would be one instance of the image with the required shade elements wrapped around it - generated via script on-the-fly, or within the markup itself. Then this item can be cloned and the per-instance image swapped with the template image (which has the shadow etc. around it), and finally the template can be appended, replacing the original image within the page itself.

There may be less work done by the browser this way, as it would not have to create three DIVs and assign class names etc. for each image in question.

Other things can be done for optimizing DOM operations such as creating a batch of items to be appended, and then appending one parent node which contains all of the newly-created nodes - as opposed to a loop which appends 100 items directly to document.body, for example.

Pardon the rant - I think this has given me something to write about on my own site, which is rather out-of-date. ;)</description>
		<content:encoded><![CDATA[<p>The code is clean (and example image.. humorous.) An 80&#8242;s child, perhaps? ;)</p>
<p>I wonder about performance degradation with script like this, however. (I used to come across this myself, when writing various bits of JS for allowing PNGs in IE without the proprietary markup for example, rounded corners via JS etc.)</p>
<p>The DOM can be rather slow in varying cases as PPK (<a href="http://www.quirksmode.org/" rel="nofollow">quirksmode.org</a>) and others have shown, and performance can degrade quite quickly when elements are being inserted on-the-fly via javascript. If a significant number of these images were in a single page, I would expect it would render quite slowly. (Before/after window.onload and timing etc. is another debate.)</p>
<p>Obviously, the benefit of this scripted method is avoiding having extra markup within the in-page HTML itself.</p>
<p>What I might try alternately is creating a static &#8220;image shadow&#8221; template, which would be one instance of the image with the required shade elements wrapped around it &#8211; generated via script on-the-fly, or within the markup itself. Then this item can be cloned and the per-instance image swapped with the template image (which has the shadow etc. around it), and finally the template can be appended, replacing the original image within the page itself.</p>
<p>There may be less work done by the browser this way, as it would not have to create three DIVs and assign class names etc. for each image in question.</p>
<p>Other things can be done for optimizing DOM operations such as creating a batch of items to be appended, and then appending one parent node which contains all of the newly-created nodes &#8211; as opposed to a loop which appends 100 items directly to document.body, for example.</p>
<p>Pardon the rant &#8211; I think this has given me something to write about on my own site, which is rather out-of-date. ;)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bob Aman</title>
		<link>http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript/comment-page-1#comment-2586</link>
		<dc:creator>Bob Aman</dc:creator>
		<pubDate>Thu, 19 Jan 2006 16:23:36 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/onion-skinned-drop-shadows-with-javascript#comment-2586</guid>
		<description>Well, not so much &quot;more complicated than it needs to be,&quot; rather it was &quot;semantically messy.&quot;  My technique just pulls the semantic ugliness out into the JavaScript where it won&#039;t interfere with the pretty markup.</description>
		<content:encoded><![CDATA[<p>Well, not so much &#8220;more complicated than it needs to be,&#8221; rather it was &#8220;semantically messy.&#8221;  My technique just pulls the semantic ugliness out into the JavaScript where it won&#8217;t interfere with the pretty markup.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

