<?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>nonobtrusive &#187; JavaScript</title>
	<atom:link href="http://www.nonobtrusive.com/category/web-development/javascript/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.nonobtrusive.com</link>
	<description>nonobtrusive web development and other stuff</description>
	<lastBuildDate>Fri, 12 Apr 2013 19:22:12 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5</generator>
		<item>
		<title>Programatically fire crossbrowser click event with JavaScript</title>
		<link>http://www.nonobtrusive.com/2011/11/29/programatically-fire-crossbrowser-click-event-with-javascript/</link>
		<comments>http://www.nonobtrusive.com/2011/11/29/programatically-fire-crossbrowser-click-event-with-javascript/#comments</comments>
		<pubDate>Tue, 29 Nov 2011 09:32:55 +0000</pubDate>
		<dc:creator>Erik Karlsson</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Web development]]></category>

		<guid isPermaLink="false">http://www.nonobtrusive.com/?p=233</guid>
		<description><![CDATA[The following function triggers a mouseclick event on the DOM-node you pass to it. I&#8217;ve tested it with Internet Explorer 6, 7, 8 and 9, Firefox 3.x and 11 nightly. Chrome 17-dev, Opera 10 and 11, webkit on iOS 5 iPhone 4, webkit on Android 2.3.4, Safari 4.0.5 on Windows. If you need it on [...]]]></description>
		<wfw:commentRss>http://www.nonobtrusive.com/2011/11/29/programatically-fire-crossbrowser-click-event-with-javascript/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Lightweight JSONP javascript library</title>
		<link>http://www.nonobtrusive.com/2010/05/20/lightweight-jsonp-without-any-3rd-party-libraries/</link>
		<comments>http://www.nonobtrusive.com/2010/05/20/lightweight-jsonp-without-any-3rd-party-libraries/#comments</comments>
		<pubDate>Thu, 20 May 2010 18:14:02 +0000</pubDate>
		<dc:creator>Erik Karlsson</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web development]]></category>
		<category><![CDATA[crossbrowser]]></category>
		<category><![CDATA[jsonp]]></category>
		<category><![CDATA[lightweight]]></category>

		<guid isPermaLink="false">http://www.nonobtrusive.com/?p=160</guid>
		<description><![CDATA[This can now be found at github: https://github.com/IntoMethod/Lightweight-JSONP Are you one of those that include jQuery or any other library only to be able to use some JSONP in your website? In that case this might be the code for you to read and try to understand. I won&#8217;t post any detailed explainations right now [...]]]></description>
		<wfw:commentRss>http://www.nonobtrusive.com/2010/05/20/lightweight-jsonp-without-any-3rd-party-libraries/feed/</wfw:commentRss>
		<slash:comments>27</slash:comments>
		</item>
		<item>
		<title>Array clone in javascript ?</title>
		<link>http://www.nonobtrusive.com/2009/10/20/array-clone-in-javascript/</link>
		<comments>http://www.nonobtrusive.com/2009/10/20/array-clone-in-javascript/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 18:13:33 +0000</pubDate>
		<dc:creator>Erik Karlsson</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Web development]]></category>

		<guid isPermaLink="false">http://www.nonobtrusive.com/?p=80</guid>
		<description><![CDATA[There&#8217;s no such thing unfortunately, but it&#8217;s easy to replicate the same behaviour since we&#8217;ve got a handy cross-browser method called slice. So what does the slice method do ? It allows up to two parameters to be passed in, start index and end index. If none are sent in the slice method will return [...]]]></description>
		<wfw:commentRss>http://www.nonobtrusive.com/2009/10/20/array-clone-in-javascript/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>&#8220;Keeping&#8221; calling-context with setTimeout/setInterval</title>
		<link>http://www.nonobtrusive.com/2009/09/12/keeping-calling-context-with-settimeoutsetinterval/</link>
		<comments>http://www.nonobtrusive.com/2009/09/12/keeping-calling-context-with-settimeoutsetinterval/#comments</comments>
		<pubDate>Sat, 12 Sep 2009 08:57:15 +0000</pubDate>
		<dc:creator>Erik Karlsson</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Web development]]></category>
		<category><![CDATA[context]]></category>
		<category><![CDATA[setInterval]]></category>
		<category><![CDATA[setTimeout]]></category>

		<guid isPermaLink="false">http://www.nonobtrusive.com/?p=77</guid>
		<description><![CDATA[The javascript setTimeout function allows to pass some code or function to be called after a specifiec timeout in milliseconds. But since the callback is handled by the Window object it&#8217;ll loose the &#8220;this&#8221; from whatever it was called from. There&#8217;s two possible solutions to this, the first and most common is to use something [...]]]></description>
		<wfw:commentRss>http://www.nonobtrusive.com/2009/09/12/keeping-calling-context-with-settimeoutsetinterval/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Just a general note, you can&#8217;t delete everything</title>
		<link>http://www.nonobtrusive.com/2009/07/31/just-a-general-note-you-cant-delete-everything/</link>
		<comments>http://www.nonobtrusive.com/2009/07/31/just-a-general-note-you-cant-delete-everything/#comments</comments>
		<pubDate>Fri, 31 Jul 2009 07:35:09 +0000</pubDate>
		<dc:creator>Erik Karlsson</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Web development]]></category>

		<guid isPermaLink="false">http://www.nonobtrusive.com/?p=62</guid>
		<description><![CDATA[I&#8217;ve had this discussion a couple of times now with several people and maybe It&#8217;s about time to make a post for it here The delete operator in ECMAScript-262 can only be used to delete dynamically created variables/properties. Having that said heres a code sample: var foo = &#34;test&#34;; //executing this in the global window-scope [...]]]></description>
		<wfw:commentRss>http://www.nonobtrusive.com/2009/07/31/just-a-general-note-you-cant-delete-everything/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dispatcher followup : A more compact way of writing prototypes + module pattern + test</title>
		<link>http://www.nonobtrusive.com/2009/07/27/dispatcher-followup-a-more-compact-way-of-writing-prototypes-module-pattern/</link>
		<comments>http://www.nonobtrusive.com/2009/07/27/dispatcher-followup-a-more-compact-way-of-writing-prototypes-module-pattern/#comments</comments>
		<pubDate>Sun, 26 Jul 2009 22:48:44 +0000</pubDate>
		<dc:creator>Erik Karlsson</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Web development]]></category>
		<category><![CDATA[custom event]]></category>
		<category><![CDATA[dispatch]]></category>
		<category><![CDATA[module pattern]]></category>
		<category><![CDATA[prototype]]></category>
		<category><![CDATA[unit-test]]></category>

		<guid isPermaLink="false">http://www.nonobtrusive.com/?p=45</guid>
		<description><![CDATA[The previous post I added some prototype methods to the Dispatcher class, but It could has well been written on the following syntax instead function Dispatcher&#40;&#41;&#123;&#125; Dispatcher.prototype = &#123; addEventlistener : function&#40;event, callback&#41;&#123; //code here &#125;, removeEventlistener : function&#40;event, callback&#41;&#123; //code here &#125; //add more methods here... don't forget to comma-separate them and do not [...]]]></description>
		<wfw:commentRss>http://www.nonobtrusive.com/2009/07/27/dispatcher-followup-a-more-compact-way-of-writing-prototypes-module-pattern/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Custom events in javascript by making your own Dispatcher class.</title>
		<link>http://www.nonobtrusive.com/2009/07/24/custom-events-in-javascript-by-making-your-own-dispatcher-class/</link>
		<comments>http://www.nonobtrusive.com/2009/07/24/custom-events-in-javascript-by-making-your-own-dispatcher-class/#comments</comments>
		<pubDate>Thu, 23 Jul 2009 22:21:56 +0000</pubDate>
		<dc:creator>Erik Karlsson</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Web development]]></category>
		<category><![CDATA[custom]]></category>
		<category><![CDATA[dispatcher]]></category>
		<category><![CDATA[event]]></category>

		<guid isPermaLink="false">http://www.nonobtrusive.com/?p=38</guid>
		<description><![CDATA[Don&#8217;t have the time to comment the code and explain right now, but I will update the post later on I wrote this in about 2minutes to help out a guy just before going to bed so I&#8217;ve only tested the addEventListener and dispatch functionality (not removeEventListener), but it actually worked in IE7, IE8, Firefox [...]]]></description>
		<wfw:commentRss>http://www.nonobtrusive.com/2009/07/24/custom-events-in-javascript-by-making-your-own-dispatcher-class/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Count the number of javascript eventhandlers in the DOM-tree.</title>
		<link>http://www.nonobtrusive.com/2009/07/23/count-the-number-of-javascript-eventhandlers-in-the-dom-tree/</link>
		<comments>http://www.nonobtrusive.com/2009/07/23/count-the-number-of-javascript-eventhandlers-in-the-dom-tree/#comments</comments>
		<pubDate>Thu, 23 Jul 2009 21:20:14 +0000</pubDate>
		<dc:creator>Erik Karlsson</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Web development]]></category>
		<category><![CDATA[dom]]></category>
		<category><![CDATA[event]]></category>
		<category><![CDATA[eventhandlers]]></category>
		<category><![CDATA[events]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[xhtml]]></category>

		<guid isPermaLink="false">http://www.nonobtrusive.com/?p=28</guid>
		<description><![CDATA[Sometimes I&#8217;ve wanted to find out how many eventhandlers there are attached to the DOM-tree I&#8217;m working with, but I&#8217;ve never found a good tool for doing this. I decided to write a simple javascript snippet that traverses the tree and finds the fact for me and it looks like its working pretty good too. [...]]]></description>
		<wfw:commentRss>http://www.nonobtrusive.com/2009/07/23/count-the-number-of-javascript-eventhandlers-in-the-dom-tree/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>So you think you&#8217;re writing effiecent jQuery selectors?</title>
		<link>http://www.nonobtrusive.com/2009/07/18/so-you-think-youre-writing-effiecent-jquery-selectors/</link>
		<comments>http://www.nonobtrusive.com/2009/07/18/so-you-think-youre-writing-effiecent-jquery-selectors/#comments</comments>
		<pubDate>Sat, 18 Jul 2009 13:59:09 +0000</pubDate>
		<dc:creator>Erik Karlsson</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Web development]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[selector]]></category>

		<guid isPermaLink="false">http://www.nonobtrusive.com/?p=16</guid>
		<description><![CDATA[Think again if you&#8217;re writing selectors such as $&#40;&#34;div#myId&#34;&#41; When selecting against the DOM ID the fastest way to get the node is to use only the id: $&#40;&#34;#myId&#34;&#41; //will translate into document.getElementById(&#34;myId&#34;) internally otherwise jQuery will first get all DIV-nodes then manually iterate over them looking for an attribute id that&#8217;s equal to &#8220;myId&#8221;. [...]]]></description>
		<wfw:commentRss>http://www.nonobtrusive.com/2009/07/18/so-you-think-youre-writing-effiecent-jquery-selectors/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to get the amount of days in an arbitrary month with leapyear in consideration</title>
		<link>http://www.nonobtrusive.com/2009/07/18/how-to-get-the-amount-of-days-in-an-arbitrary-month-with-leapyear-in-consideration/</link>
		<comments>http://www.nonobtrusive.com/2009/07/18/how-to-get-the-amount-of-days-in-an-arbitrary-month-with-leapyear-in-consideration/#comments</comments>
		<pubDate>Fri, 17 Jul 2009 22:51:44 +0000</pubDate>
		<dc:creator>Erik Karlsson</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Web development]]></category>
		<category><![CDATA[date]]></category>
		<category><![CDATA[days]]></category>
		<category><![CDATA[month]]></category>

		<guid isPermaLink="false">http://www.nonobtrusive.com/wordpress/?p=4</guid>
		<description><![CDATA[function daysInMonth&#40; month, year &#41; &#123; var now = new Date&#40;&#41;; month = month &#124;&#124; now.getMonth&#40;&#41;+1; //this month as default year = year &#124;&#124; now.getFullYear&#40;&#41;; //this year as default return new Date&#40;year, month, 0&#41;.getDate&#40;&#41;; &#125; &#160; //consider January as month 1, February as month 2 ... December 12 &#160; daysInMonth&#40; 2, 2003 &#41;; //returns 28, [...]]]></description>
		<wfw:commentRss>http://www.nonobtrusive.com/2009/07/18/how-to-get-the-amount-of-days-in-an-arbitrary-month-with-leapyear-in-consideration/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
