<?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>Jupiter Digital blog &#187; Chris</title>
	<atom:link href="http://www.jupiterdigital.co.uk/blog/author/chris/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jupiterdigital.co.uk/blog</link>
	<description>The Jupiter Digital WordPress weblog</description>
	<lastBuildDate>Mon, 14 Jun 2010 10:04:33 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Don&#8217;t look if you&#8217;re squeamish!</title>
		<link>http://www.jupiterdigital.co.uk/blog/2008/09/dont-look-if-youre-squeamish/</link>
		<comments>http://www.jupiterdigital.co.uk/blog/2008/09/dont-look-if-youre-squeamish/#comments</comments>
		<pubDate>Fri, 19 Sep 2008 14:15:47 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Creative]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.jupiterdigital.co.uk/blog/?p=119</guid>
		<description><![CDATA[<p><img src="http://www.jupiterdigital.co.uk/blog/wp-content/uploads/2009/09/tarantula.jpg" alt="Spider" /></p>
<p>I found this <a href="http://www.onemotion.com/flash/spider/" target="_newwindow">wonderfully created interactive tarantula</a> on my travels around the web, a true showcase of what is capable with a creative mind and a flair for technology.]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.jupiterdigital.co.uk/blog/wp-content/uploads/2009/09/tarantula.jpg" alt="Spider" /></p>
<p>I found this <a href="http://www.onemotion.com/flash/spider/" target="_newwindow">wonderfully created interactive tarantula</a> on my travels around the web, a true showcase of what is capable with a creative mind and a flair for technology. I&#8217;ve made a few enemies of arachnophobes around the building by sending this to people disguised in a <a href="http://tinyurl.com">TinyURL</a> link (sorry Lorna!). It was worth it though&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jupiterdigital.co.uk/blog/2008/09/dont-look-if-youre-squeamish/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google search can now index Flash</title>
		<link>http://www.jupiterdigital.co.uk/blog/2008/07/google-search-can-now-index-flash/</link>
		<comments>http://www.jupiterdigital.co.uk/blog/2008/07/google-search-can-now-index-flash/#comments</comments>
		<pubDate>Wed, 02 Jul 2008 07:19:43 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.jupiterdigital.co.uk/blog/?p=46</guid>
		<description><![CDATA[<p>I was reading the <a href="http://googleblog.blogspot.com/">Google Blog</a> and came across a very welcome <a href="http://googleblog.blogspot.com/2008/06/google-learns-to-crawl-flash.html">post</a>.]]></description>
			<content:encoded><![CDATA[<p>I was reading the <a href="http://googleblog.blogspot.com/">Google Blog</a> and came across a very welcome <a href="http://googleblog.blogspot.com/2008/06/google-learns-to-crawl-flash.html">post</a>.</p>
<p>Hopefully now we will see less hesitance to use <a href="http://www.macromedia.com/software/flash/about/">Flash</a> in creative ways for fear of disappearing down the search rankings!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jupiterdigital.co.uk/blog/2008/07/google-search-can-now-index-flash/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interesting way to fix memory leaks in IE6 javascript</title>
		<link>http://www.jupiterdigital.co.uk/blog/2008/06/interesting-way-to-fix-memory-leaks-in-ie6-javascript/</link>
		<comments>http://www.jupiterdigital.co.uk/blog/2008/06/interesting-way-to-fix-memory-leaks-in-ie6-javascript/#comments</comments>
		<pubDate>Thu, 12 Jun 2008 13:15:32 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.jupiterdigital.co.uk/blog/?p=27</guid>
		<description><![CDATA[<p>Although we should all have updated to at least IE7 by now (if not a more recent competitor), there are still thousands of users out there still stuck in IE6 land. Javascript objects on IE6 are notorious for memory leaks which can seriously degrade performance over time, but I noticed a post over at <a title="Ajaxian" href="http://www.]]></description>
			<content:encoded><![CDATA[<p>Although we should all have updated to at least IE7 by now (if not a more recent competitor), there are still thousands of users out there still stuck in IE6 land. Javascript objects on IE6 are notorious for memory leaks which can seriously degrade performance over time, but I noticed a post over at <a title="Ajaxian" href="http://www.ajaxian.com/" target="_blank">Ajaxian</a> explaining a very simple workaround using a rarely used javascript construct &#8211; try &#8230; finally.</p>
<p><span id="more-27"></span></p>
<p>So while the following code would leak memory through the return obj;</p>
<pre lang="javascript" style="font-size: 1.3em;"><span style="color: #ffffff;"><code>    <span class="oper">function</span> <span class="func">createButton</span>() {
      <span class="oper">var</span> <span class="var">obj</span> <span class="oper">=</span> <span class="var">document</span>.<span class="func">createElement</span>("<span class="string">button</span>");
      <span class="var">obj</span>.<span class="var">innerHTML</span> <span class="oper">=</span> "<span class="string">click me</span>";
      <span class="var">obj</span>.<span class="var">onclick</span> <span class="oper">=</span> <span class="oper">function</span>() {
        <span class="comment">//handle onclick</span>
      }
      <span class="var">obj</span>.<span class="var">onmouseover</span> <span class="oper">=</span> <span class="oper">function</span>() {
        <span class="comment">//handle onmouseover</span>
      }
      <span class="oper">return</span> <span class="var">obj</span>;<span class="comment">//return a object which has memory leak problem in IE6</span>
    }

    <span class="oper">var</span> <span class="var">dButton</span> <span class="oper">=</span> <span class="var">document</span>.<span class="func">getElementsById</span>("<span class="string">d1</span>").<span class="func">appendChild</span>(<span class="func">createButton</span>());
    <span class="comment">//skipped...</span></code></span></pre>
<p>Putting the try &#8230; finally construct in will fix your memory leak problems:</p>
<pre lang="javascript" style="font-size: 1.3em;"><span style="color: #ffffff;"><code>    <span class="oper">function</span> <span class="func">createButton</span>() {
      <span class="oper">var</span> <span class="var">obj</span> <span class="oper">=</span> <span class="var">document</span>.<span class="func">createElement</span>("<span class="string">button</span>");
      <span class="var">obj</span>.<span class="var">innerHTML</span> <span class="oper">=</span> "<span class="string">click me</span>";
      <span class="var">obj</span>.<span class="var">onclick</span> <span class="oper">=</span> <span class="oper">function</span>() {
        <span class="comment">//handle onclick</span>
      }
      <span class="var">obj</span>.<span class="var">onmouseover</span> <span class="oper">=</span> <span class="oper">function</span>() {
        <span class="comment">//handle onmouseover</span>
      }

      <span class="comment">//this helps to fix the memory leak issue</span>
      <span class="var">try</span> {
        <span class="oper">return</span> <span class="var">obj</span>;

      } <span class="var">finally</span> {
        <span class="var">obj</span> <span class="oper">=</span> <span class="num">null</span>;
      }
    }

    <span class="oper">var</span> <span class="var">dButton</span> <span class="oper">=</span> <span class="var">document</span>.<span class="func">getElementsById</span>("<span class="string">d1</span>").<span class="func">appendChild</span>(<span class="func">createButton</span>());
    <span class="comment">//skipped...</span></code></span></pre>
<p>There are more demos and proof of concepts over at the blog of <a href="http://www.hedgerwow.com/360/dhtml/ie6_memory_leak_fix/" target="_blank">Hedger Wang</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jupiterdigital.co.uk/blog/2008/06/interesting-way-to-fix-memory-leaks-in-ie6-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google AJAX Libraries API finally launches</title>
		<link>http://www.jupiterdigital.co.uk/blog/2008/05/google-ajax-libraries-api-finally-launches/</link>
		<comments>http://www.jupiterdigital.co.uk/blog/2008/05/google-ajax-libraries-api-finally-launches/#comments</comments>
		<pubDate>Thu, 29 May 2008 08:06:47 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.jupiterdigital.co.uk/blog/?p=19</guid>
		<description><![CDATA[<p>Google have finally launched a much anticipated service among web developers. Use of various AJAX API libraries has become pretty ubiquitous in newer websites and unfortunately it&#8217;s getting to a point that every other page you visit makes you download yet another copy of Prototype, Mootools or jQuery wasting large amounts of bandwidth if only you could access the already cached copies that the user has already downloaded.]]></description>
			<content:encoded><![CDATA[<p>Google have finally launched a much anticipated service among web developers. Use of various AJAX API libraries has become pretty ubiquitous in newer websites and unfortunately it&#8217;s getting to a point that every other page you visit makes you download yet another copy of Prototype, Mootools or jQuery wasting large amounts of bandwidth if only you could access the already cached copies that the user has already downloaded.</p>
<p><span id="more-19"></span>Google has stepped in as a trusted source of central hosting for these AJAX libraries with <a title="Google AJAX Libraries API" href="http://code.google.com/apis/ajaxlibs/" target="_blank">Google AJAX Libraries API</a>. This has been tried before but with a name as large as Google behind it, it has every chance of actually making an impact. Google will host major releases of:</p>
<ul>
<li><a href="http://code.google.com/apis/ajaxlibs/documentation/index.html#jquery">jQuery</a></li>
<li><a href="http://code.google.com/apis/ajaxlibs/documentation/index.html#prototype">prototype</a></li>
<li><a href="http://code.google.com/apis/ajaxlibs/documentation/index.html#script_aculo_us">script.aculo.us</a></li>
<li><a href="http://code.google.com/apis/ajaxlibs/documentation/index.html#mootools">MooTools</a></li>
<li><a href="http://code.google.com/apis/ajaxlibs/documentation/index.html#dojo">dojo</a></li>
</ul>
<p>Hopefully this will help speed up access times, lower bandwidth bills (which with some of these libraries can be quite significant amounts of bandwidth) and help lessen problems with outdated, buggy, copies of libraries.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jupiterdigital.co.uk/blog/2008/05/google-ajax-libraries-api-finally-launches/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
