<?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: Capabilities vs. Quirks: When sniffing is OK</title>
	<atom:link href="http://ajaxian.com/archives/capabilities-vs-quirks-when-sniffing-is-ok/feed" rel="self" type="application/rss+xml" />
	<link>http://ajaxian.com/archives/capabilities-vs-quirks-when-sniffing-is-ok</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: Trevor</title>
		<link>http://ajaxian.com/archives/capabilities-vs-quirks-when-sniffing-is-ok/comment-page-1#comment-249317</link>
		<dc:creator>Trevor</dc:creator>
		<pubDate>Wed, 11 Apr 2007 23:06:48 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=2299#comment-249317</guid>
		<description>Daniel,

Most of the credit belongs to http://www.javascriptkit.com/javatutors/objdetect3.shtml</description>
		<content:encoded><![CDATA[<p>Daniel,</p>
<p>Most of the credit belongs to <a href="http://www.javascriptkit.com/javatutors/objdetect3.shtml" rel="nofollow">http://www.javascriptkit.com/javatutors/objdetect3.shtml</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daniel Kraaij (DaanK Interworking)</title>
		<link>http://ajaxian.com/archives/capabilities-vs-quirks-when-sniffing-is-ok/comment-page-1#comment-249255</link>
		<dc:creator>Daniel Kraaij (DaanK Interworking)</dc:creator>
		<pubDate>Wed, 11 Apr 2007 07:14:28 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=2299#comment-249255</guid>
		<description>very nice Trevor, just the piece of code i was looking for :)</description>
		<content:encoded><![CDATA[<p>very nice Trevor, just the piece of code i was looking for :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Trevor</title>
		<link>http://ajaxian.com/archives/capabilities-vs-quirks-when-sniffing-is-ok/comment-page-1#comment-249237</link>
		<dc:creator>Trevor</dc:creator>
		<pubDate>Tue, 10 Apr 2007 23:32:37 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=2299#comment-249237</guid>
		<description>The reason I don&#039;t ever check the user agent string is because it can be spoofed by most browsers. While it&#039;s a lofty ideal to use the same code for every browser, it&#039;s not really realistic if you want your web application to work or look right. But object detection is far superior to user agent detection. You can effectively detect a lot of popular browsers with object detection:

&lt;code&gt;if(document.all &amp;&amp; !window.opera) var isIE = true;
if(document.all &amp;&amp; !document.fireEvent &amp;&amp; !window.opera) var isIE5 = true;
if(document.all &amp;&amp; document.fireEvent &amp;&amp; !document.createComment) var isIE55 = true;
if(document.compatMode &amp;&amp; document.all) var isIE6 = true;
if(document.documentElement &amp;&amp; typeof document.documentElement.style.maxHeight!=&quot;undefined&quot; &amp;&amp; !isSafari &amp;&amp; !isGecko &amp;&amp; !isOpera) var isIE7 = true;
if(!document.doctype &amp;&amp; !isIE) var isSafari = true;
if(window.Iterator) var isGecko181 = true;
elseif(Array.every) var isGecko18 = true;
elseif(window.getComputedStyle &amp;&amp; !window.opera) isGecko17 = true;
if(window.opera) var isOpera = true;&lt;/code&gt;</description>
		<content:encoded><![CDATA[<p>The reason I don&#8217;t ever check the user agent string is because it can be spoofed by most browsers. While it&#8217;s a lofty ideal to use the same code for every browser, it&#8217;s not really realistic if you want your web application to work or look right. But object detection is far superior to user agent detection. You can effectively detect a lot of popular browsers with object detection:</p>
<p><code>if(document.all &amp;&amp; !window.opera) var isIE = true;<br />
if(document.all &amp;&amp; !document.fireEvent &amp;&amp; !window.opera) var isIE5 = true;<br />
if(document.all &amp;&amp; document.fireEvent &amp;&amp; !document.createComment) var isIE55 = true;<br />
if(document.compatMode &amp;&amp; document.all) var isIE6 = true;<br />
if(document.documentElement &amp;&amp; typeof document.documentElement.style.maxHeight!="undefined" &amp;&amp; !isSafari &amp;&amp; !isGecko &amp;&amp; !isOpera) var isIE7 = true;<br />
if(!document.doctype &amp;&amp; !isIE) var isSafari = true;<br />
if(window.Iterator) var isGecko181 = true;<br />
elseif(Array.every) var isGecko18 = true;<br />
elseif(window.getComputedStyle &amp;&amp; !window.opera) isGecko17 = true;<br />
if(window.opera) var isOpera = true;</code></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: gonchuki</title>
		<link>http://ajaxian.com/archives/capabilities-vs-quirks-when-sniffing-is-ok/comment-page-1#comment-249195</link>
		<dc:creator>gonchuki</dc:creator>
		<pubDate>Tue, 10 Apr 2007 15:10:02 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=2299#comment-249195</guid>
		<description>Anyone using a Gecko-based browser from 2005 is prone to worse bugs than that, i see it ridiculous to support these kind of quirks.</description>
		<content:encoded><![CDATA[<p>Anyone using a Gecko-based browser from 2005 is prone to worse bugs than that, i see it ridiculous to support these kind of quirks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ã«Ã¯</title>
		<link>http://ajaxian.com/archives/capabilities-vs-quirks-when-sniffing-is-ok/comment-page-1#comment-249191</link>
		<dc:creator>Ã«Ã¯</dc:creator>
		<pubDate>Tue, 10 Apr 2007 14:38:59 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/?p=2299#comment-249191</guid>
		<description>Ã«Ã¯</description>
		<content:encoded><![CDATA[<p>Ã«Ã¯</p>
]]></content:encoded>
	</item>
</channel>
</rss>

