<?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: Using Iframes Sparingly</title>
	<atom:link href="http://www.stevesouders.com/blog/2009/06/03/using-iframes-sparingly/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.stevesouders.com/blog/2009/06/03/using-iframes-sparingly/</link>
	<description>Essential knowledge for making your web pages faster.</description>
	<lastBuildDate>Sat, 04 Feb 2012 09:46:28 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: Comox Valley Homes</title>
		<link>http://www.stevesouders.com/blog/2009/06/03/using-iframes-sparingly/#comment-3568</link>
		<dc:creator>Comox Valley Homes</dc:creator>
		<pubDate>Wed, 09 Nov 2011 06:18:15 +0000</pubDate>
		<guid isPermaLink="false">http://www.stevesouders.com/blog/?p=403#comment-3568</guid>
		<description>Great article, any test results with SCRIBD? Is there a better way to embed PDF documents that is faster?</description>
		<content:encoded><![CDATA[<p>Great article, any test results with SCRIBD? Is there a better way to embed PDF documents that is faster?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Priya</title>
		<link>http://www.stevesouders.com/blog/2009/06/03/using-iframes-sparingly/#comment-2679</link>
		<dc:creator>Priya</dc:creator>
		<pubDate>Sat, 13 Nov 2010 02:02:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.stevesouders.com/blog/?p=403#comment-2679</guid>
		<description>Our website has become very slow ever since we started using iframes for headers footers. I am glad that I read this psot. Thanks Steve.</description>
		<content:encoded><![CDATA[<p>Our website has become very slow ever since we started using iframes for headers footers. I am glad that I read this psot. Thanks Steve.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steve Souders</title>
		<link>http://www.stevesouders.com/blog/2009/06/03/using-iframes-sparingly/#comment-2355</link>
		<dc:creator>Steve Souders</dc:creator>
		<pubDate>Wed, 15 Sep 2010 20:39:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.stevesouders.com/blog/?p=403#comment-2355</guid>
		<description>@Aaron: Yes, I believe my test has race condition issues. I recommend looking at more recent iframe async techniques esp. from &lt;a href=&quot;http://en.oreilly.com/velocity2010/public/schedule/detail/13070&quot; rel=&quot;nofollow&quot;&gt;Meebo&lt;/a&gt;.</description>
		<content:encoded><![CDATA[<p>@Aaron: Yes, I believe my test has race condition issues. I recommend looking at more recent iframe async techniques esp. from <a href="http://en.oreilly.com/velocity2010/public/schedule/detail/13070" rel="nofollow">Meebo</a>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Aaron Peters</title>
		<link>http://www.stevesouders.com/blog/2009/06/03/using-iframes-sparingly/#comment-2353</link>
		<dc:creator>Aaron Peters</dc:creator>
		<pubDate>Wed, 15 Sep 2010 08:51:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.stevesouders.com/blog/?p=403#comment-2353</guid>
		<description>hi Steve,

Yesterday and today @pornelski and I were discussing iframes and (non-)blocking behavior on Twitter. We used your Iframes Non-Blocking example pages in the discussion.
We found out that the setTimeout trick you outline does not work in IE7 on *1st* page visit: the iframe still blocks the onload event.

We used this page for testing: http://stevesouders.com/efws/iframe-onload-nonblocking.php

Visit the page in IE7 with an empty cache. On that 1st page visit, the parent onload event is blocked. Reload page: onload is not blocked.

IE7 test results: http://www.webpagetest.org/result/100915_50CA/
IE8 test results: http://www.webpagetest.org/result/100915_50EA/

The IE8 results page clearly shows the onload is *not* blocked when visiting the page again.

I also tested on local IE7 with Pagetest plugin: same behavior.</description>
		<content:encoded><![CDATA[<p>hi Steve,</p>
<p>Yesterday and today @pornelski and I were discussing iframes and (non-)blocking behavior on Twitter. We used your Iframes Non-Blocking example pages in the discussion.<br />
We found out that the setTimeout trick you outline does not work in IE7 on *1st* page visit: the iframe still blocks the onload event.</p>
<p>We used this page for testing: <a href="http://stevesouders.com/efws/iframe-onload-nonblocking.php" rel="nofollow">http://stevesouders.com/efws/iframe-onload-nonblocking.php</a></p>
<p>Visit the page in IE7 with an empty cache. On that 1st page visit, the parent onload event is blocked. Reload page: onload is not blocked.</p>
<p>IE7 test results: <a href="http://www.webpagetest.org/result/100915_50CA/" rel="nofollow">http://www.webpagetest.org/result/100915_50CA/</a><br />
IE8 test results: <a href="http://www.webpagetest.org/result/100915_50EA/" rel="nofollow">http://www.webpagetest.org/result/100915_50EA/</a></p>
<p>The IE8 results page clearly shows the onload is *not* blocked when visiting the page again.</p>
<p>I also tested on local IE7 with Pagetest plugin: same behavior.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: sunnybear</title>
		<link>http://www.stevesouders.com/blog/2009/06/03/using-iframes-sparingly/#comment-1200</link>
		<dc:creator>sunnybear</dc:creator>
		<pubDate>Sun, 06 Dec 2009 11:58:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.stevesouders.com/blog/?p=403#comment-1200</guid>
		<description>Small remark about delayed iframes&#039; load. There can be possible incompatibilities with &#039;raw JS&#039; approach (if we define SRC attribute at the bottom of the page). I.e. Google Calendar (in iframe) can&#039;t be loaded properly. So the most safe way is to envelope the whole iframe into div, and replace contents of this div at the bottom of the page (with actual iframe).</description>
		<content:encoded><![CDATA[<p>Small remark about delayed iframes&#8217; load. There can be possible incompatibilities with &#8216;raw JS&#8217; approach (if we define SRC attribute at the bottom of the page). I.e. Google Calendar (in iframe) can&#8217;t be loaded properly. So the most safe way is to envelope the whole iframe into div, and replace contents of this div at the bottom of the page (with actual iframe).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Rose</title>
		<link>http://www.stevesouders.com/blog/2009/06/03/using-iframes-sparingly/#comment-1174</link>
		<dc:creator>Mark Rose</dc:creator>
		<pubDate>Wed, 02 Dec 2009 20:02:40 +0000</pubDate>
		<guid isPermaLink="false">http://www.stevesouders.com/blog/?p=403#comment-1174</guid>
		<description>One of the biggest frustrations I have with ads are networks and managers (such as Google Ad Manager) that insist on using document.write to insert code. It would be trivial to write Javascript to update the HTML content of a div after onload, but it&#039;s not done for unknown reason.

There are ways you can get around this limitation, by stuffing all the slow ad stuff at the end of your document, then using Javascript to position ads where they belong on the page. There is some talk about this technique on the Google Ad Manager forums, and it could easily be applied to any other blocking Javascript code. See http://www.google.com/support/forum/p/Google+Ad+Manager/thread?tid=7bcfaa482259cc28&amp;hl=en</description>
		<content:encoded><![CDATA[<p>One of the biggest frustrations I have with ads are networks and managers (such as Google Ad Manager) that insist on using document.write to insert code. It would be trivial to write Javascript to update the HTML content of a div after onload, but it&#8217;s not done for unknown reason.</p>
<p>There are ways you can get around this limitation, by stuffing all the slow ad stuff at the end of your document, then using Javascript to position ads where they belong on the page. There is some talk about this technique on the Google Ad Manager forums, and it could easily be applied to any other blocking Javascript code. See <a href="http://www.google.com/support/forum/p/Google+Ad+Manager/thread?tid=7bcfaa482259cc28&#038;hl=en" rel="nofollow">http://www.google.com/support/forum/p/Google+Ad+Manager/thread?tid=7bcfaa482259cc28&#038;hl=en</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Josh</title>
		<link>http://www.stevesouders.com/blog/2009/06/03/using-iframes-sparingly/#comment-643</link>
		<dc:creator>Josh</dc:creator>
		<pubDate>Sun, 07 Jun 2009 09:40:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.stevesouders.com/blog/?p=403#comment-643</guid>
		<description>Great post (and series of posts you have been providing in recent months!)

If you can get Adsense and Google Analytics to implement some of these practices, soon, it will make a lot of the web a lot faster :)</description>
		<content:encoded><![CDATA[<p>Great post (and series of posts you have been providing in recent months!)</p>
<p>If you can get Adsense and Google Analytics to implement some of these practices, soon, it will make a lot of the web a lot faster :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Péter Nagy</title>
		<link>http://www.stevesouders.com/blog/2009/06/03/using-iframes-sparingly/#comment-642</link>
		<dc:creator>Péter Nagy</dc:creator>
		<pubDate>Sat, 06 Jun 2009 00:16:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.stevesouders.com/blog/?p=403#comment-642</guid>
		<description>Sorry for the bad linebreaks... :)

• Windows Operating Systems with Internet Explorer 6.0 or Higher OR Firefox 2.0 or Higher

– Create an IFrame element and place it into the document with SRC set to a small adpage file in the same domain as the page.
– Create a Script element and place it into the IFrame document with SRC set to the ad delivery system
– Generate a variable called inDapIF = true in the IFrame document to identify to the ad code that it is running inside the Dynamic IFrame.


NOTE: The IFrame should not be created using document.write as this may cause problems with AJAX pages.

The Script elements can be created using document.write as they are within the IFRAME and will not interfere with
the page content.</description>
		<content:encoded><![CDATA[<p>Sorry for the bad linebreaks&#8230; :)</p>
<p>• Windows Operating Systems with Internet Explorer 6.0 or Higher OR Firefox 2.0 or Higher</p>
<p>– Create an IFrame element and place it into the document with SRC set to a small adpage file in the same domain as the page.<br />
– Create a Script element and place it into the IFrame document with SRC set to the ad delivery system<br />
– Generate a variable called inDapIF = true in the IFrame document to identify to the ad code that it is running inside the Dynamic IFrame.</p>
<p>NOTE: The IFrame should not be created using document.write as this may cause problems with AJAX pages.</p>
<p>The Script elements can be created using document.write as they are within the IFRAME and will not interfere with<br />
the page content.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Péter Nagy</title>
		<link>http://www.stevesouders.com/blog/2009/06/03/using-iframes-sparingly/#comment-641</link>
		<dc:creator>Péter Nagy</dc:creator>
		<pubDate>Sat, 06 Jun 2009 00:13:56 +0000</pubDate>
		<guid isPermaLink="false">http://www.stevesouders.com/blog/?p=403#comment-641</guid>
		<description>from: http://www.iab.net/media/file/rich_media_ajax_best_practices.pdf

A method to create the Friendly IFrame:

• Windows Operating Systems with Internet Explorer 6.0 or Higher OR Firefox 2.0 or
Higher
  – Create an IFrame element and place it into the document with SRC set to a small adpage file in the
same domain as the page.
  – Create a Script element and place it into the IFrame document with SRC set to the ad delivery
system
  – Generate a variable called inDapIF = true in the IFrame document to identify to the ad code that it
is running inside the Dynamic IFrame.

NOTE: The IFrame should not be created using document.write as this may cause problems with AJAX pages.
The Script elements can be created using document.write as they are within the IFRAME and will not interfere with
the page content.</description>
		<content:encoded><![CDATA[<p>from: <a href="http://www.iab.net/media/file/rich_media_ajax_best_practices.pdf" rel="nofollow">http://www.iab.net/media/file/rich_media_ajax_best_practices.pdf</a></p>
<p>A method to create the Friendly IFrame:</p>
<p>• Windows Operating Systems with Internet Explorer 6.0 or Higher OR Firefox 2.0 or<br />
Higher<br />
  – Create an IFrame element and place it into the document with SRC set to a small adpage file in the<br />
same domain as the page.<br />
  – Create a Script element and place it into the IFrame document with SRC set to the ad delivery<br />
system<br />
  – Generate a variable called inDapIF = true in the IFrame document to identify to the ad code that it<br />
is running inside the Dynamic IFrame.</p>
<p>NOTE: The IFrame should not be created using document.write as this may cause problems with AJAX pages.<br />
The Script elements can be created using document.write as they are within the IFRAME and will not interfere with<br />
the page content.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Danny Khatib</title>
		<link>http://www.stevesouders.com/blog/2009/06/03/using-iframes-sparingly/#comment-640</link>
		<dc:creator>Danny Khatib</dc:creator>
		<pubDate>Sat, 06 Jun 2009 00:03:24 +0000</pubDate>
		<guid isPermaLink="false">http://www.stevesouders.com/blog/?p=403#comment-640</guid>
		<description>Thanks for the pragmatic advice, Steve.

One concern I have is that many ad networks (and other third-parties) use the first js file as an entry point to download another 2-4 js files and more content.  If we load their first external file near the top but asynchronously through Script DOM Element, I wonder if their subsequent js load/execution will still block other page content.  If so, I suppose the middle ground would be to defer it for IE users (and others soon).  I&#039;ll try both and see what happens.  Thanks again!</description>
		<content:encoded><![CDATA[<p>Thanks for the pragmatic advice, Steve.</p>
<p>One concern I have is that many ad networks (and other third-parties) use the first js file as an entry point to download another 2-4 js files and more content.  If we load their first external file near the top but asynchronously through Script DOM Element, I wonder if their subsequent js load/execution will still block other page content.  If so, I suppose the middle ground would be to defer it for IE users (and others soon).  I&#8217;ll try both and see what happens.  Thanks again!</p>
]]></content:encoded>
	</item>
</channel>
</rss>

