<?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: Making creating DOM-based applications less of a hassle</title>
	<atom:link href="http://ajaxian.com/archives/making-creating-dom-based-applications-less-of-a-hassle/feed" rel="self" type="application/rss+xml" />
	<link>http://ajaxian.com/archives/making-creating-dom-based-applications-less-of-a-hassle</link>
	<description>Cleaning up the web with Ajax</description>
	<lastBuildDate>Thu, 09 Feb 2012 06:55:33 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2</generator>
	<item>
		<title>By: kolev</title>
		<link>http://ajaxian.com/archives/making-creating-dom-based-applications-less-of-a-hassle/comment-page-1#comment-266858</link>
		<dc:creator>kolev</dc:creator>
		<pubDate>Sat, 23 Aug 2008 06:14:59 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=4150#comment-266858</guid>
		<description>I personally like &lt;a href=&quot;http://www.embeddedjs.com/&quot; rel=&quot;nofollow&quot;&gt;EJS&lt;/a&gt; the most! Templates are compiled into JavaScript and it&#039;s just great!</description>
		<content:encoded><![CDATA[<p>I personally like <a href="http://www.embeddedjs.com/" rel="nofollow">EJS</a> the most! Templates are compiled into JavaScript and it&#8217;s just great!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: gancelot</title>
		<link>http://ajaxian.com/archives/making-creating-dom-based-applications-less-of-a-hassle/comment-page-1#comment-266825</link>
		<dc:creator>gancelot</dc:creator>
		<pubDate>Thu, 21 Aug 2008 16:52:32 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=4150#comment-266825</guid>
		<description>ExtJS also has a great built-in solution called XTemplate for doing this that&#039;s worth looking at also.
http://extjs.com/deploy/dev/docs/?class=Ext.XTemplate</description>
		<content:encoded><![CDATA[<p>ExtJS also has a great built-in solution called XTemplate for doing this that&#8217;s worth looking at also.<br />
<a href="http://extjs.com/deploy/dev/docs/?class=Ext.XTemplate" rel="nofollow">http://extjs.com/deploy/dev/docs/?class=Ext.XTemplate</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: AdrenalinMd</title>
		<link>http://ajaxian.com/archives/making-creating-dom-based-applications-less-of-a-hassle/comment-page-1#comment-266820</link>
		<dc:creator>AdrenalinMd</dc:creator>
		<pubDate>Thu, 21 Aug 2008 09:39:39 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=4150#comment-266820</guid>
		<description>It&#039;s great to have small solution like this so we can use it any framework we want, thanks for sharing.</description>
		<content:encoded><![CDATA[<p>It&#8217;s great to have small solution like this so we can use it any framework we want, thanks for sharing.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: sos</title>
		<link>http://ajaxian.com/archives/making-creating-dom-based-applications-less-of-a-hassle/comment-page-1#comment-266819</link>
		<dc:creator>sos</dc:creator>
		<pubDate>Thu, 21 Aug 2008 08:22:01 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=4150#comment-266819</guid>
		<description>More Dojo plugging - Dojo also has an implementation of the Django templating language, dojox.dtl.  This is an extremely powerful template engine that, similar to this one, creates the HTML once, then updates it when the data changes.  

You simply update the data, call the template.render method, and the HTML is updated - no creating nodes repeatedly, no innerHTML or nodeValue access.</description>
		<content:encoded><![CDATA[<p>More Dojo plugging &#8211; Dojo also has an implementation of the Django templating language, dojox.dtl.  This is an extremely powerful template engine that, similar to this one, creates the HTML once, then updates it when the data changes.  </p>
<p>You simply update the data, call the template.render method, and the HTML is updated &#8211; no creating nodes repeatedly, no innerHTML or nodeValue access.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jdalton</title>
		<link>http://ajaxian.com/archives/making-creating-dom-based-applications-less-of-a-hassle/comment-page-1#comment-266814</link>
		<dc:creator>jdalton</dc:creator>
		<pubDate>Thu, 21 Aug 2008 00:07:09 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=4150#comment-266814</guid>
		<description>I dig it :). Maybe viewsHandler.add could be absorbed by viewsHandler.define (they seem to be called 1 after another consistently) . For example if &quot;define&quot; is called and the element has not been &quot;add&quot;&#039;ed then auto add it. Also viewsHandler may benefit from chaining:
viewsHandler.create(…).set(...).set(...);

This can be used with other frameworks which is cool too.
Good job :D</description>
		<content:encoded><![CDATA[<p>I dig it :). Maybe viewsHandler.add could be absorbed by viewsHandler.define (they seem to be called 1 after another consistently) . For example if &#8220;define&#8221; is called and the element has not been &#8220;add&#8221;&#8216;ed then auto add it. Also viewsHandler may benefit from chaining:<br />
viewsHandler.create(…).set(&#8230;).set(&#8230;);</p>
<p>This can be used with other frameworks which is cool too.<br />
Good job :D</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ilazarte</title>
		<link>http://ajaxian.com/archives/making-creating-dom-based-applications-less-of-a-hassle/comment-page-1#comment-266809</link>
		<dc:creator>ilazarte</dc:creator>
		<pubDate>Wed, 20 Aug 2008 19:38:15 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=4150#comment-266809</guid>
		<description>hmm... this makes me wonder if there&#039;s a nice intersection between a json-like dsl for js templating and haml..  interesting post!</description>
		<content:encoded><![CDATA[<p>hmm&#8230; this makes me wonder if there&#8217;s a nice intersection between a json-like dsl for js templating and haml..  interesting post!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nosredna</title>
		<link>http://ajaxian.com/archives/making-creating-dom-based-applications-less-of-a-hassle/comment-page-1#comment-266807</link>
		<dc:creator>Nosredna</dc:creator>
		<pubDate>Wed, 20 Aug 2008 18:52:53 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=4150#comment-266807</guid>
		<description>Rags, try again, you still haven&#039;t gone to Riches.</description>
		<content:encoded><![CDATA[<p>Rags, try again, you still haven&#8217;t gone to Riches.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: maine</title>
		<link>http://ajaxian.com/archives/making-creating-dom-based-applications-less-of-a-hassle/comment-page-1#comment-266806</link>
		<dc:creator>maine</dc:creator>
		<pubDate>Wed, 20 Aug 2008 18:27:13 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=4150#comment-266806</guid>
		<description>&lt;q&gt;The benefit is that for setting the data you don&#039;t need to access the DOM any longer or use innerHTML or nodeValue.&lt;/q&gt; You might be interested in Dojo&#039;s new &lt;a href=&quot;http://dojotoolkit.org/2008/08/19/widget-attr&quot; rel=&quot;nofollow&quot;&gt;Widget.attr(), too&lt;/a&gt;. It&#039;s a &lt;q&gt;standard interface for setting/getting all widget attributes&lt;/q&gt;, including innerHTML of templates nodes.</description>
		<content:encoded><![CDATA[<p><q>The benefit is that for setting the data you don&#8217;t need to access the DOM any longer or use innerHTML or nodeValue.</q> You might be interested in Dojo&#8217;s new <a href="http://dojotoolkit.org/2008/08/19/widget-attr" rel="nofollow">Widget.attr(), too</a>. It&#8217;s a <q>standard interface for setting/getting all widget attributes</q>, including innerHTML of templates nodes.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rags</title>
		<link>http://ajaxian.com/archives/making-creating-dom-based-applications-less-of-a-hassle/comment-page-1#comment-266804</link>
		<dc:creator>Rags</dc:creator>
		<pubDate>Wed, 20 Aug 2008 17:27:24 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=4150#comment-266804</guid>
		<description>I think, my HTML markup got filtered out. Trying again.

&lt;code&gt;

templateString: 	&#039;&#039;+
		&#039;&#039;+
	&#039;&#039;
&lt;/code&gt;</description>
		<content:encoded><![CDATA[<p>I think, my HTML markup got filtered out. Trying again.</p>
<p><code></p>
<p>templateString: 	''+<br />
		''+<br />
	''<br />
</code></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rags</title>
		<link>http://ajaxian.com/archives/making-creating-dom-based-applications-less-of-a-hassle/comment-page-1#comment-266803</link>
		<dc:creator>Rags</dc:creator>
		<pubDate>Wed, 20 Aug 2008 17:24:00 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=4150#comment-266803</guid>
		<description>Dojo framework has a concept of &quot;templates&quot;, which define the UI layout. The templates can have dojoAttachPoints, which can later be used to access the DOM. For ex:

templateString: 	&#039;&#039;+
			&#039;&#039;+
		&#039;&#039;

And later in the code:

this.containerNode.appendChild(whatever);

Any DOM API can be used. This approach keeps the UI separate from the code and I kind of like this approach.</description>
		<content:encoded><![CDATA[<p>Dojo framework has a concept of &#8220;templates&#8221;, which define the UI layout. The templates can have dojoAttachPoints, which can later be used to access the DOM. For ex:</p>
<p>templateString: 	&#8221;+<br />
			&#8221;+<br />
		&#8221;</p>
<p>And later in the code:</p>
<p>this.containerNode.appendChild(whatever);</p>
<p>Any DOM API can be used. This approach keeps the UI separate from the code and I kind of like this approach.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris Heilmann</title>
		<link>http://ajaxian.com/archives/making-creating-dom-based-applications-less-of-a-hassle/comment-page-1#comment-266801</link>
		<dc:creator>Chris Heilmann</dc:creator>
		<pubDate>Wed, 20 Aug 2008 17:16:09 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=4150#comment-266801</guid>
		<description>Well, the problem with loading HTML documents with AHAH is that you have no handle into them - you need to use DOM scripting to find the elements to manipulate. This is where it gets expensive and slow. The benefit of this method is that you already have these pointers. It is the same with using innerHTML - it is a fast way to add content, but then you need to find the parts to manipulate. If you created them and stored pointers in variables you don&#039;t need to do that.</description>
		<content:encoded><![CDATA[<p>Well, the problem with loading HTML documents with AHAH is that you have no handle into them &#8211; you need to use DOM scripting to find the elements to manipulate. This is where it gets expensive and slow. The benefit of this method is that you already have these pointers. It is the same with using innerHTML &#8211; it is a fast way to add content, but then you need to find the parts to manipulate. If you created them and stored pointers in variables you don&#8217;t need to do that.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: creppie</title>
		<link>http://ajaxian.com/archives/making-creating-dom-based-applications-less-of-a-hassle/comment-page-1#comment-266800</link>
		<dc:creator>creppie</dc:creator>
		<pubDate>Wed, 20 Aug 2008 17:11:29 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=4150#comment-266800</guid>
		<description>I use html templates in hidden divs as well.  Much easier to code and maintain than using DOM els and setters.  Then, you should use DOM to navigate and manipulate.</description>
		<content:encoded><![CDATA[<p>I use html templates in hidden divs as well.  Much easier to code and maintain than using DOM els and setters.  Then, you should use DOM to navigate and manipulate.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: RobFrontEndDeveloper</title>
		<link>http://ajaxian.com/archives/making-creating-dom-based-applications-less-of-a-hassle/comment-page-1#comment-266799</link>
		<dc:creator>RobFrontEndDeveloper</dc:creator>
		<pubDate>Wed, 20 Aug 2008 16:24:25 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=4150#comment-266799</guid>
		<description>Interesting solution. Another approach to this verbosity of creating JavaScript widgets etc I have found is to have a HTML document filled with all component templates (DIV structures etc) that is Jaxed into the page as and when required and of course the template components can be duplicated. Also give you a neat HTML file to maintain actual HTML code of UI components instead of re-mapping element creation in your JS code.
It&#039;s an idea at least, works quite nice so far, sure it has some drawbacks though but I like it :)</description>
		<content:encoded><![CDATA[<p>Interesting solution. Another approach to this verbosity of creating JavaScript widgets etc I have found is to have a HTML document filled with all component templates (DIV structures etc) that is Jaxed into the page as and when required and of course the template components can be duplicated. Also give you a neat HTML file to maintain actual HTML code of UI components instead of re-mapping element creation in your JS code.<br />
It&#8217;s an idea at least, works quite nice so far, sure it has some drawbacks though but I like it :)</p>
]]></content:encoded>
	</item>
</channel>
</rss>

