<?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>All Marked Up &#187; javascript</title>
	<atom:link href="http://allmarkedup.com/journal/tag/javascript/feed/" rel="self" type="application/rss+xml" />
	<link>http://allmarkedup.com/journal</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Sun, 22 Aug 2010 15:33:16 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>jQuery Event-Driven Pagination plugin &amp; more</title>
		<link>http://allmarkedup.com/journal/2010/02/jquery-event-driven-pagination-plugin-more/</link>
		<comments>http://allmarkedup.com/journal/2010/02/jquery-event-driven-pagination-plugin-more/#comments</comments>
		<pubDate>Sun, 07 Feb 2010 17:00:28 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Notes]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[projects]]></category>

		<guid isPermaLink="false">http://allmarkedup.com/journal/?p=540</guid>
		<description><![CDATA[I have just released a replacement for my Quick Paginate jQuery plugin &#8211; it has similar functionality but uses a custom event-driven API for much more flexibility! It&#8217;s been re-thought and re-written from the ground up, and although the documentation is still a bit lacking there are a few demos up that should help to get [...]]]></description>
			<content:encoded><![CDATA[<p>I have just released a replacement for my Quick Paginate jQuery plugin &#8211; it has similar functionality but uses a custom event-driven API for much more flexibility! It&#8217;s been re-thought and re-written from the ground up, and although the documentation is still a bit lacking there are a <a href="http://projects.allmarkedup.com/jquery_evtpaginate/demo_basic.html">few demos</a> up that should help to get you started.</p>
<p><a href="http://projects.allmarkedup.com/jquery_evtpaginate/index.php">View the documentation and download the Event-driven Pagination plugin here</a></p>
<p>I have also decided put up some links to some of my undocumented and alpha/beta code on the <a href="http://projects.allmarkedup.com/">landing page of my projects area</a>. Feel free to have a poke around but don&#8217;t be surprised if what you find there is a little on the buggy side!</p>
]]></content:encoded>
			<wfw:commentRss>http://allmarkedup.com/journal/2010/02/jquery-event-driven-pagination-plugin-more/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SublimeVideo</title>
		<link>http://allmarkedup.com/journal/2010/02/sublimevideo/</link>
		<comments>http://allmarkedup.com/journal/2010/02/sublimevideo/#comments</comments>
		<pubDate>Wed, 03 Feb 2010 09:02:42 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Links]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://allmarkedup.com/journal/?p=531</guid>
		<description><![CDATA[SublimeVideo. Webkit only &#8211; at the moment &#8211; but very cool taste of the things that can be done with a little HTML5 video, JavaScript and some clever coding. Great stuff.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://jilion.com/sublime/video">SublimeVideo</a>. Webkit only &#8211; at the moment &#8211; but very cool taste of the things that can be done with a little HTML5 video, JavaScript and some clever coding. Great stuff.</p>
]]></content:encoded>
			<wfw:commentRss>http://allmarkedup.com/journal/2010/02/sublimevideo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gordon &#8211; An open source Flash runtime in JavaScript</title>
		<link>http://allmarkedup.com/journal/2010/01/gordon-an-open-source-flash-runtime-in-javascript/</link>
		<comments>http://allmarkedup.com/journal/2010/01/gordon-an-open-source-flash-runtime-in-javascript/#comments</comments>
		<pubDate>Thu, 14 Jan 2010 08:57:39 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Links]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://allmarkedup.com/journal/?p=526</guid>
		<description><![CDATA[Gordon &#8211; An open source Flash runtime in JavaScript &#8211; Very cool indeed. Totally blows my mind what people are doing in JavaScript these days &#8211; it&#8217;s ability to do seemingly anything is one of the reasons I love it so much.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://paulirish.com/work/gordon/demos/">Gordon &#8211; An open source Flash runtime in JavaScript</a> &#8211; Very cool indeed. Totally blows my mind what people are doing in JavaScript these days &#8211; it&#8217;s ability to do seemingly <em>anything </em>is one of the reasons I love it so much.</p>
]]></content:encoded>
			<wfw:commentRss>http://allmarkedup.com/journal/2010/01/gordon-an-open-source-flash-runtime-in-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Analytics Launches Asynchronous Tracking</title>
		<link>http://allmarkedup.com/journal/2009/12/google-analytics-launches-asynchronous-tracking/</link>
		<comments>http://allmarkedup.com/journal/2009/12/google-analytics-launches-asynchronous-tracking/#comments</comments>
		<pubDate>Thu, 03 Dec 2009 13:46:21 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Links]]></category>
		<category><![CDATA[analytics]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://allmarkedup.com/journal/?p=453</guid>
		<description><![CDATA[Google Analytics Launches Asynchronous Tracking. Excellent news! The old GA code was a real killer for slowing down site loading. This makes so much more sense.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://googlecode.blogspot.com/2009/12/google-analytics-launches-asynchronous.html">Google Analytics Launches Asynchronous Tracking</a>. Excellent news! The old GA code was a real killer for slowing down site loading. This makes so much more sense.</p>
]]></content:encoded>
			<wfw:commentRss>http://allmarkedup.com/journal/2009/12/google-analytics-launches-asynchronous-tracking/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Node.js is genuinely exciting</title>
		<link>http://allmarkedup.com/journal/2009/11/node-js-is-genuinely-exciting/</link>
		<comments>http://allmarkedup.com/journal/2009/11/node-js-is-genuinely-exciting/#comments</comments>
		<pubDate>Mon, 23 Nov 2009 13:39:50 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Links]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://allmarkedup.com/journal/?p=451</guid>
		<description><![CDATA[Node.js is genuinely exciting. Nice overview of Node.js from Simon Willison, extracted from his talk at Full Frontal last Friday. Exciting stuff indeed.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://simonwillison.net/2009/Nov/23/node/#c55493">Node.js is genuinely exciting</a>. Nice overview of Node.js from Simon Willison, extracted from his talk at <a href="http://2009.full-frontal.org/">Full Frontal</a> last Friday. Exciting stuff indeed.</p>
]]></content:encoded>
			<wfw:commentRss>http://allmarkedup.com/journal/2009/11/node-js-is-genuinely-exciting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IxEdit</title>
		<link>http://allmarkedup.com/journal/2009/11/ixedit/</link>
		<comments>http://allmarkedup.com/journal/2009/11/ixedit/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 23:08:31 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Links]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[tools]]></category>

		<guid isPermaLink="false">http://allmarkedup.com/journal/?p=404</guid>
		<description><![CDATA[IxEdit. Generally I have no time for code generators of any type, but this looks like it could actually be a useful little tool for quickly creating jQuery&#8217;d prototypes. Uses a inspector-panel type overlay to allow point-and-click creation of jQuery code.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://ixedit.com/">IxEdit</a>. Generally I have no time for code generators of any type, but this looks like it could actually be a useful little tool for quickly creating jQuery&#8217;d prototypes. Uses a inspector-panel type overlay to allow point-and-click creation of jQuery code.</p>
]]></content:encoded>
			<wfw:commentRss>http://allmarkedup.com/journal/2009/11/ixedit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Learning Advanced JavaScript</title>
		<link>http://allmarkedup.com/journal/2009/11/learning-advanced-javascript/</link>
		<comments>http://allmarkedup.com/journal/2009/11/learning-advanced-javascript/#comments</comments>
		<pubDate>Mon, 16 Nov 2009 19:45:27 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Links]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://allmarkedup.com/journal/?p=402</guid>
		<description><![CDATA[Learning Advanced JavaScript. I just came across this interactive &#8217;slide-show&#8217; style tutorial from John Resig, (although it has been around for a year or more I think). I would have liked a little more background explanatory text at times, but overall it feels like a really nice way to get across some of the more [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://ejohn.org/apps/learn/">Learning Advanced JavaScript</a>. I just came across this interactive &#8217;slide-show&#8217; style tutorial from <a href="http://ejohn.org">John Resig</a>, (although it has been around for a year or more I think). I would have liked a little more background explanatory text at times, but overall it feels like a really nice way to get across some of the more complex bits of the JavaScript language.</p>
]]></content:encoded>
			<wfw:commentRss>http://allmarkedup.com/journal/2009/11/learning-advanced-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bespin Embedded</title>
		<link>http://allmarkedup.com/journal/2009/11/bespin-embedded/</link>
		<comments>http://allmarkedup.com/journal/2009/11/bespin-embedded/#comments</comments>
		<pubDate>Fri, 13 Nov 2009 19:34:54 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Links]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://allmarkedup.com/journal/?p=367</guid>
		<description><![CDATA[Bespin Embedded. First &#8216;official&#8217; (albeit preview) release of the embeddable version of the Bespin editor. I have played around with the pre-reboot version but it will be good to have a more stable, documented version to hack about a bit.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://mozillalabs.com/bespin/2009/11/13/bespin-embedded-first-preview-release/">Bespin Embedded</a>. First &#8216;official&#8217; (albeit preview) release of the embeddable version of the Bespin editor. I have played around with the pre-reboot version but it will be good to have a more stable, documented version to hack about a bit.</p>
]]></content:encoded>
			<wfw:commentRss>http://allmarkedup.com/journal/2009/11/bespin-embedded/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Underscore.js</title>
		<link>http://allmarkedup.com/journal/2009/10/underscore-js/</link>
		<comments>http://allmarkedup.com/journal/2009/10/underscore-js/#comments</comments>
		<pubDate>Thu, 29 Oct 2009 15:14:14 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Links]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://allmarkedup.com/journal/?p=363</guid>
		<description><![CDATA[Underscore.js. Nice little JS library described as &#8220;the tie to go along with jQuery&#8217;s tux&#8221; &#8211; provides a set of functional primitives like map, reduce, max, min etc all under an underscore &#8216;namespace&#8217;. Bookmarked.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://documentcloud.github.com/underscore/">Underscore.js</a>. Nice little JS library described as &#8220;the tie to go along with jQuery&#8217;s tux&#8221; &#8211; provides a set of functional primitives like map, reduce, max, min etc all under an underscore &#8216;namespace&#8217;. Bookmarked.</p>
]]></content:encoded>
			<wfw:commentRss>http://allmarkedup.com/journal/2009/10/underscore-js/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jQuery URL Toolbox *beta*</title>
		<link>http://allmarkedup.com/journal/2009/10/jquery-url-toolbox-beta/</link>
		<comments>http://allmarkedup.com/journal/2009/10/jquery-url-toolbox-beta/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 21:13:44 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Notes]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[projects]]></category>

		<guid isPermaLink="false">http://allmarkedup.com/journal/?p=330</guid>
		<description><![CDATA[I have been working on a jQuery plugin (well actually a self-contained set of plugins) that extends the capabilites of my jQuery URL Parser. I&#8217;m calling it a &#8216;URL Toolbox&#8217; as it does everything the URL parser does (i.e. retrieving various bits of any URL string) but also allows you to set parts of URL [...]]]></description>
			<content:encoded><![CDATA[<p>I have been working on a jQuery plugin (well actually a self-contained set of plugins) that extends the capabilites of my jQuery URL Parser. I&#8217;m calling it a &#8216;URL Toolbox&#8217; as it does everything the URL parser does (i.e. retrieving various bits of any URL string) but also allows you to <em>set</em> parts of URL strings, link hrefs, form actions etc, amongst other things.</p>
<p>UPDATE (22.01.10) &#8211; I have now removed the $.observeUrl() function as I felt it was not really in line with the core idea behind the plugin. For those needing similar functionality I would highly recommend Ben Alman&#8217;s <a href="http://benalman.com/projects/jquery-hashchange-plugin/">hashchange plugin</a>. New version also includes a number of bugfixes (thanks to Pavol, Eugene et al.). Proper demos and docs coming soon I hope! :-)</p>
<p><del datetime="2010-01-22T09:21:44+00:00">It also includes a function, $.observeUrl(), that once called &#8216;listens&#8217; for changes to the document URL hash fragment, and triggers a custom jquery event, &#8216;hash:change&#8217; whenever the hash portion of the URL changes. The plugin includes a somewhat modified version of the <a href="http://www.mikage.to/jquery/jquery_history.html">jQuery History Plugin</a> to enable full back/forwards/history support for hash changes, and will hopefully make it pretty trivial to include full bookmarking and history support in AJAX based apps/sites .</del></p>
<p>The plugin is still <em>very</em> beta, but I thought I would link to the current version of it here anyway for those that are feeling brave and want to have a play around.</p>
<p><a href="http://projects.allmarkedup.com/jquery_url_toolbox/jquery.url_toolbox.js">Download the jQuery URL Toolbox beta</a></p>
<p>Some very quick pointers on how to use it are included below &#8211; once I have tested it further I will move it over to the projects area of my site and get some proper documentation together.</p>
<h2>General usage:</h2>
<ol>
<li>Use  <code>var myUrl = $(element).url()</code> to grab an element&#8217;s  URL and return a special &#8216;URL&#8217; object. (<code>a</code>, <code>form</code>, <code>img</code>, <code>base</code>, <code>link</code> and <code>iframe</code> elements are supported, and using &#8216;document&#8217; (no quotes) as the selector will return a URL object based on the current page&#8217;s URL)</li>
<li>Then use <code>myUrl.attr('theAttr')</code> to return any part of the URL, where &#8216;theAttr&#8217; can be any one of: source, protocol, host, port, query, file, hash or path.</li>
<li>If you include a second argument to the attr() method &#8211; i.e. something like <code>myUrl.attr('path', '/myNewPath/')</code>, then it will set the value of that part of the URL to the value of the second argument. Whatever the URL of element the initial <code>url()</code> function was called on will be updated accordingly. If the document URL was used (via <code>$(document).url()</code>) then the location will be changed accordingly, normally resulting in a page refresh.</li>
<li>Doing a <code>.toString()</code> on the URL object at any time will return the current string representation of the URL.</li>
<li>The <code>.segment(i)</code> method (where &#8216;i&#8217; is the segment number, starting from zero) will return the corresponding segment from the URL. Including a second parameter will set that segment.</li>
<li>The <code>.param('key')</code> method (where &#8216;key&#8217; is the query string key) will return the corresponding value of the suppied key in the URL query (GET) string, if there is one. Including a second parameter will set that parameter.</li>
<li>If you have a hash fragment that consists of segments, like &#8216;#/part1/part2/&#8217; then you can get/set those segments using the <code>hashSegment()</code> method, which works exactly like the <code>segment()</code> one.</li>
<li>Similarly if you have a hash fragment that looks like a query string, the parts can be get/set using the <code>hashParam()</code> method.</li>
</ol>
<h2><span style="text-decoration: line-through;">Watching for hash changes in the document&#8217;s URL:</span></h2>
<ol>
<li><span style="text-decoration: line-through;">Calling the <code>$.observeUrl()</code> function in your code will result in a custom &#8216;hash:changed&#8217; event being triggered on the document any time the URL hash fragment is updated.</span></li>
<li><span style="text-decoration: line-through;">It will also ensure that any changes to the URL hash fragment are correctly recorded in the browser&#8217;s history (&#8216;fixed&#8217; for all browsers) so that the back/forwards buttons can be used correctly.</span></li>
<li><span style="text-decoration: line-through;">You can then set up you app to respond to hash changes by listening out for the hash:change event on the document, eg. <code>$(document).bind('hash:change', function(e, hash){ doSomething() }</code></span></li>
</ol>
<p>A lot to take in but I will try to get together some more comprehensive and less confusing documentation in the near future!</p>
<p>Any bugs, suggestions or otherwise please email me at mark[at]allmarkedup.com for now.</p>
]]></content:encoded>
			<wfw:commentRss>http://allmarkedup.com/journal/2009/10/jquery-url-toolbox-beta/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
	</channel>
</rss>
