<story><title>Vanilla JS, fast, lightweight, cross-platform framework</title><url>http://vanilla-js.com/</url><text>Vanilla JS is a fast, lightweight, cross-platform framework
for building incredible, powerful JavaScript applications.</text></story><parent_chain><item><author>dag11</author><text>I&apos;ll take&lt;p&gt;&lt;pre&gt;&lt;code&gt;  $(&apos;p&apos;).text(&apos;Hello.&apos;)
&lt;/code&gt;&lt;/pre&gt;
over&lt;p&gt;&lt;pre&gt;&lt;code&gt;  for (var p in document.getElementsByTagName(&apos;p&apos;)) { p.innerHTML = &apos;Hello.&apos;; }
&lt;/code&gt;&lt;/pre&gt;
any day!</text></item><item><author>dotborg</author><text>jQuery API is not pretty</text></item><item><author>ashray</author><text>Fast and lightweight, yes. But vanilla-js is certainly not cross platform ;) You see, that&apos;s actually one of the biggest problems with JS and one of the main reasons why people use things like jQuery (apart from the pretty API..).&lt;p&gt;That cross platform bit is the weakest link &lt;i&gt;sigh&lt;/i&gt;.</text></item></parent_chain><comment><author>v413</author><text>This enumeration is done the wrong way. You enumerate over a DOM node list which looks like an array, which includes enumerable properties like &quot;length&quot;. This means that the variable &quot;p&quot; at some point will be &quot;length&quot; and &quot;length&quot;.innerHTML = &quot;...&quot; will produce an error.&lt;p&gt;The proper way is:&lt;p&gt;for( var i=0, ps=document.getElementsByTagName(&apos;p&apos;), len=ps.length; i &amp;#60; len; i++) {ps[i].innerHTML = &apos;Hello.&apos;;}</text></comment>
<story><title>Vanilla JS, fast, lightweight, cross-platform framework</title><url>http://vanilla-js.com/</url><text>Vanilla JS is a fast, lightweight, cross-platform framework
for building incredible, powerful JavaScript applications.</text></story><parent_chain><item><author>dag11</author><text>I&apos;ll take&lt;p&gt;&lt;pre&gt;&lt;code&gt;  $(&apos;p&apos;).text(&apos;Hello.&apos;)
&lt;/code&gt;&lt;/pre&gt;
over&lt;p&gt;&lt;pre&gt;&lt;code&gt;  for (var p in document.getElementsByTagName(&apos;p&apos;)) { p.innerHTML = &apos;Hello.&apos;; }
&lt;/code&gt;&lt;/pre&gt;
any day!</text></item><item><author>dotborg</author><text>jQuery API is not pretty</text></item><item><author>ashray</author><text>Fast and lightweight, yes. But vanilla-js is certainly not cross platform ;) You see, that&apos;s actually one of the biggest problems with JS and one of the main reasons why people use things like jQuery (apart from the pretty API..).&lt;p&gt;That cross platform bit is the weakest link &lt;i&gt;sigh&lt;/i&gt;.</text></item></parent_chain><comment><author>ams6110</author><text>The jquery version is easier to write, and less prone to error, but in the native version it&apos;s much more clear what&apos;s actually going on.</text></comment>