<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title><![CDATA[Content with Style - Comments on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
    <link>http://www.contentwithstyle.co.uk/feeds/rss/comments/38</link>
    <description><![CDATA[]]></description>
    <pubDate>Thu, 02 Sep 2010 11:55:45 -0400</pubDate>
    <generator>Zend_Feed</generator>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <item>
      <title><![CDATA[Content with Style - Comment #1 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-142</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-142</guid>
      <description><![CDATA[Fascinating article, Mike. Here&#8217;s a thought: if you allow the href=&#8221;#thing&#8221; to act as a link to a real anchor on the page (so use return true instead of return false) as well as a trigger for the scripting, then the latest version JAWS has a chance of working with your AJAX too.<br />
<br />
So when you make a change to an area of the page you can link to that area and help guide (some) screen readers (indeed all modern browsers) to the new content.]]></description>
      <content:encoded><![CDATA[Fascinating article, Mike. Here&#8217;s a thought: if you allow the href=&#8221;#thing&#8221; to act as a link to a real anchor on the page (so use return true instead of return false) as well as a trigger for the scripting, then the latest version JAWS has a chance of working with your AJAX too.<br />
<br />
So when you make a change to an area of the page you can link to that area and help guide (some) screen readers (indeed all modern browsers) to the new content.]]></content:encoded>
      <pubDate>Wed, 15 Jun 2005 18:12:22 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #2 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-143</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-143</guid>
      <description><![CDATA[Nice thought Richard.]]></description>
      <content:encoded><![CDATA[Nice thought Richard.]]></content:encoded>
      <pubDate>Wed, 15 Jun 2005 18:40:30 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #3 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-144</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-144</guid>
      <description><![CDATA[Ah, hadn&#8217;t thought of that! I wonder how hard that would be to add&#8230;? We&#8217;ve got a thing coming up here soon about AJAX and accessibility so I might give it a go then.]]></description>
      <content:encoded><![CDATA[Ah, hadn&#8217;t thought of that! I wonder how hard that would be to add&#8230;? We&#8217;ve got a thing coming up here soon about AJAX and accessibility so I might give it a go then.]]></content:encoded>
      <pubDate>Wed, 15 Jun 2005 18:46:46 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #4 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-145</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-145</guid>
      <description><![CDATA[It isn&#8217;t exactly Ajax, but I&#8217;ve been considering doing this for S5 as well.  You can already use fragment identifiers to go straight to a slide, but the address bar doesn&#8217;t change when you move through the slide show.  It&#8217;s been an occasional request, and if I decide to do it, I&#8217;ll definitely look at your code to see how it should be done.  Thanks!]]></description>
      <content:encoded><![CDATA[It isn&#8217;t exactly Ajax, but I&#8217;ve been considering doing this for S5 as well.  You can already use fragment identifiers to go straight to a slide, but the address bar doesn&#8217;t change when you move through the slide show.  It&#8217;s been an occasional request, and if I decide to do it, I&#8217;ll definitely look at your code to see how it should be done.  Thanks!]]></content:encoded>
      <pubDate>Wed, 15 Jun 2005 19:18:40 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #5 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-146</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-146</guid>
      <description><![CDATA[Crikey, it&#8217;s the mighty Mr Meyer! You got me into this stuff in the first place&#8230; I think I might owe you a beer.<br />
<br />
I reckon this could have uses outside of AJAX but that&#8217;s just what I happened to be talking about when I came up with the idea, and it stuck. I&#8217;d love to see people put this concept to use elsewhere! Flash seemed like the obvious one, since it&#8217;s asynchronous too, but your S5 app requires the decoupling of the default browser machinery as well, so this might be of some use.]]></description>
      <content:encoded><![CDATA[Crikey, it&#8217;s the mighty Mr Meyer! You got me into this stuff in the first place&#8230; I think I might owe you a beer.<br />
<br />
I reckon this could have uses outside of AJAX but that&#8217;s just what I happened to be talking about when I came up with the idea, and it stuck. I&#8217;d love to see people put this concept to use elsewhere! Flash seemed like the obvious one, since it&#8217;s asynchronous too, but your S5 app requires the decoupling of the default browser machinery as well, so this might be of some use.]]></content:encoded>
      <pubDate>Wed, 15 Jun 2005 19:36:57 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #6 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-147</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-147</guid>
      <description><![CDATA[Mike,<br />
<br />
Thanks, I was in the process of researching all this stuff for my ajax apps.  Prototype (Ajax framework built into RoR) needs this.  I&#8217;ve been working on making prototype fail (ie regular links unless ajax is available) and will think of how to add this as well.]]></description>
      <content:encoded><![CDATA[Mike,<br />
<br />
Thanks, I was in the process of researching all this stuff for my ajax apps.  Prototype (Ajax framework built into RoR) needs this.  I&#8217;ve been working on making prototype fail (ie regular links unless ajax is available) and will think of how to add this as well.]]></content:encoded>
      <pubDate>Thu, 16 Jun 2005 05:28:39 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #7 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-149</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-149</guid>
      <description><![CDATA[This breaks completely if you turn off Javascript.]]></description>
      <content:encoded><![CDATA[This breaks completely if you turn off Javascript.]]></content:encoded>
      <pubDate>Thu, 16 Jun 2005 09:40:00 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #8 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-150</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-150</guid>
      <description><![CDATA[Nice stuff. It looks like the code snippets here are wrong though&#8230; take the following code:<br />
<br />
    for(var i=0; i<br />
        var href = links[i].getAttribute(&#8220;href&#8221;);<br />
<br />
There&#8217;s something missing there ;-)<br />
<br />
Also, I don&#8217;t think it&#8217;s a good idea to pass on strings of JavaScript code to PageLocator. You&#8217;d rather write a little wrapper function to execute that code than starting up the JS parser by using `eval`.<br />
<br />
And Jonathan, I don&#8217;t think the app itself will work without JavaScript, so that isn&#8217;t much of a problem.]]></description>
      <content:encoded><![CDATA[Nice stuff. It looks like the code snippets here are wrong though&#8230; take the following code:<br />
<br />
    for(var i=0; i<br />
        var href = links[i].getAttribute(&#8220;href&#8221;);<br />
<br />
There&#8217;s something missing there ;-)<br />
<br />
Also, I don&#8217;t think it&#8217;s a good idea to pass on strings of JavaScript code to PageLocator. You&#8217;d rather write a little wrapper function to execute that code than starting up the JS parser by using `eval`.<br />
<br />
And Jonathan, I don&#8217;t think the app itself will work without JavaScript, so that isn&#8217;t much of a problem.]]></content:encoded>
      <pubDate>Thu, 16 Jun 2005 10:29:00 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #9 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-151</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-151</guid>
      <description><![CDATA[Jonathan: Well duh! :rolleyes:<br />
<br />
It&#8217;s an interesting technique, although I can&#8217;t help thinking there must be an easier way to do it.]]></description>
      <content:encoded><![CDATA[Jonathan: Well duh! :rolleyes:<br />
<br />
It&#8217;s an interesting technique, although I can&#8217;t help thinking there must be an easier way to do it.]]></content:encoded>
      <pubDate>Thu, 16 Jun 2005 10:46:31 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #10 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-152</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-152</guid>
      <description><![CDATA[Damn, I was just working on a demonstration javascript which does exactly that a few days ago to put on my website, but it isn&#8217;t finished yet. So you beat me to it, and that sucks!<br />
<br />
Anyways, a few comments:<br />
 &#8211; It would be easier to use window.location.hash instead of window.location.href;<br />
 &#8211; Instead of loading actual pages with the iframe, you can use iframe.contentWindow.document.open, write and close to achieve the same effect;<br />
 &#8211; And if you use that instead, you can also let it send an event to the script element on load using onload=&#8221;&#8221; or  so you don&#8217;t need the 100ms timeout.<br />
<br />
I don&#8217;t really have time to look into it further now.<br />
<br />
~Grauw]]></description>
      <content:encoded><![CDATA[Damn, I was just working on a demonstration javascript which does exactly that a few days ago to put on my website, but it isn&#8217;t finished yet. So you beat me to it, and that sucks!<br />
<br />
Anyways, a few comments:<br />
 &#8211; It would be easier to use window.location.hash instead of window.location.href;<br />
 &#8211; Instead of loading actual pages with the iframe, you can use iframe.contentWindow.document.open, write and close to achieve the same effect;<br />
 &#8211; And if you use that instead, you can also let it send an event to the script element on load using onload=&#8221;&#8221; or  so you don&#8217;t need the 100ms timeout.<br />
<br />
I don&#8217;t really have time to look into it further now.<br />
<br />
~Grauw]]></content:encoded>
      <pubDate>Thu, 16 Jun 2005 10:51:23 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #11 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-155</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-155</guid>
      <description><![CDATA[Jonathan: The AJAX-style functionality breaks but a fallback is provided &#8211; the links still go to the content.<br />
<br />
Mark and Laurens: Thanks loads for your input. I&#8217;m neither a JS guru nor an AJAX one; I saw a problem and decided to try and solve it. I really appreciate the input of people who REALLY know the components here.<br />
<br />
Laurens: Sorry mate!]]></description>
      <content:encoded><![CDATA[Jonathan: The AJAX-style functionality breaks but a fallback is provided &#8211; the links still go to the content.<br />
<br />
Mark and Laurens: Thanks loads for your input. I&#8217;m neither a JS guru nor an AJAX one; I saw a problem and decided to try and solve it. I really appreciate the input of people who REALLY know the components here.<br />
<br />
Laurens: Sorry mate!]]></content:encoded>
      <pubDate>Thu, 16 Jun 2005 15:04:44 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #12 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-159</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-159</guid>
      <description><![CDATA[First, for comment 7 (Jonathan) it breaks without js? Wasn&#8217;t AJAX all about js?<br />
(you&#8217;re welcome Mike :)<br />
<br />
The technique is cool , i have been looking into it and still might try my own solution for it someday, still digging into js stuff.<br />
The one thing i didn&#8217;t like was the part that the # makes the page jump to the top again (at least at my first view on FF/Linux). Might be something to look into.<br />
<br />
Other than that, great job.]]></description>
      <content:encoded><![CDATA[First, for comment 7 (Jonathan) it breaks without js? Wasn&#8217;t AJAX all about js?<br />
(you&#8217;re welcome Mike :)<br />
<br />
The technique is cool , i have been looking into it and still might try my own solution for it someday, still digging into js stuff.<br />
The one thing i didn&#8217;t like was the part that the # makes the page jump to the top again (at least at my first view on FF/Linux). Might be something to look into.<br />
<br />
Other than that, great job.]]></content:encoded>
      <pubDate>Fri, 17 Jun 2005 01:38:32 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #13 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-160</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-160</guid>
      <description><![CDATA[I really like the way you have set up this article. How clear can you get writing up where it&#8217;s tested and where it works? By the way, I wouldn&#8217;t mind (and I&#8217;m sure Mike doesn&#8217;t either) feedback and improvements from other configurations than the tested ones. Thinking about the Opera version which supports XmlHttpRequest, is that out properly? I&#8217;ve lost track with Opera, which is a shame. Or any Linux variations. And please no weird hacked or specialized versions. The ones your mum / your client would use is fine. And a cake. And presents. I also wonder what the limitations on Safari are. <br />
I think what Jonathan means, is that if you turn JS off, there is no css loaded with the content when you click on the links. But I think that&#8217;s due to the demo being a demo, or am I wrong?]]></description>
      <content:encoded><![CDATA[I really like the way you have set up this article. How clear can you get writing up where it&#8217;s tested and where it works? By the way, I wouldn&#8217;t mind (and I&#8217;m sure Mike doesn&#8217;t either) feedback and improvements from other configurations than the tested ones. Thinking about the Opera version which supports XmlHttpRequest, is that out properly? I&#8217;ve lost track with Opera, which is a shame. Or any Linux variations. And please no weird hacked or specialized versions. The ones your mum / your client would use is fine. And a cake. And presents. I also wonder what the limitations on Safari are. <br />
I think what Jonathan means, is that if you turn JS off, there is no css loaded with the content when you click on the links. But I think that&#8217;s due to the demo being a demo, or am I wrong?]]></content:encoded>
      <pubDate>Fri, 17 Jun 2005 01:59:59 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #14 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-161</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-161</guid>
      <description><![CDATA[Well, I can verify it all works perfectly with Firefox in Linux.]]></description>
      <content:encoded><![CDATA[Well, I can verify it all works perfectly with Firefox in Linux.]]></content:encoded>
      <pubDate>Fri, 17 Jun 2005 02:38:00 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #15 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-162</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-162</guid>
      <description><![CDATA[Thanks for the killer article man.  I will definitely be integrating this into <a href="http://www.mp3act.net">mp3act.</a> I&#8217;ve been meaning to do that for awhile now and this is a great solution by the looks of it. <br />
<br />
So thanks again, and nice site!  It&#8217;s going into the RSS reader pronto.]]></description>
      <content:encoded><![CDATA[Thanks for the killer article man.  I will definitely be integrating this into <a href="http://www.mp3act.net">mp3act.</a> I&#8217;ve been meaning to do that for awhile now and this is a great solution by the looks of it. <br />
<br />
So thanks again, and nice site!  It&#8217;s going into the RSS reader pronto.]]></content:encoded>
      <pubDate>Fri, 17 Jun 2005 08:15:03 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #16 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-163</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-163</guid>
      <description><![CDATA[Yay! Lovin&#8217; the over use of the eval statement. <br />
<br />
j00 r0x duD3!]]></description>
      <content:encoded><![CDATA[Yay! Lovin&#8217; the over use of the eval statement. <br />
<br />
j00 r0x duD3!]]></content:encoded>
      <pubDate>Fri, 17 Jun 2005 14:21:30 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #17 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-164</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-164</guid>
      <description><![CDATA[oooooooooo&#8230; <br />
<br />
eval() is evil!<br />
<br />
DON&#8217;T USE IT EVER&#8230; IT&#8217;S A LAME SOLUTION!]]></description>
      <content:encoded><![CDATA[oooooooooo&#8230; <br />
<br />
eval() is evil!<br />
<br />
DON&#8217;T USE IT EVER&#8230; IT&#8217;S A LAME SOLUTION!]]></content:encoded>
      <pubDate>Fri, 17 Jun 2005 14:54:38 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #18 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-165</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-165</guid>
      <description><![CDATA[Cool, well suggest an alternative and I&#8217;ll pop it in. Mark Wubben spotted the same thing.  As I said earlier, I&#8217;m not a JS guru &#8211; my interest is user experience, so if you know a better way, I&#8217;m all ears.]]></description>
      <content:encoded><![CDATA[Cool, well suggest an alternative and I&#8217;ll pop it in. Mark Wubben spotted the same thing.  As I said earlier, I&#8217;m not a JS guru &#8211; my interest is user experience, so if you know a better way, I&#8217;m all ears.]]></content:encoded>
      <pubDate>Fri, 17 Jun 2005 15:09:21 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #19 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-166</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-166</guid>
      <description><![CDATA[@all the eval haters:
<br />
I don&#8217;t think eval used on the client side is a big issue, unlike the server side when input variables are evaluated. So I don&#8217;t agree with the statement that eval is a lame solution. 
<br />
What's the worst thing that could happen? Since anyone can read the source and all the data is already passed to the browser it would be possible to execute anything through <code>javascript:doWhatIWant(with.myObject)</code> anyway ...
<br />

If you want to make the thing &#8220;secure&#8221; than check the propertyToUse against a list of allowed properties.

<br />
<br />

When we move to PHP code that&#8217;s a different story. In general you should always make sure that gets fed into a string which will be parsed by eval CANNOT contain anything malicious.<br />
<br />
&#8220;Never trust any user input!&#8221; ]]></description>
      <content:encoded><![CDATA[@all the eval haters:
<br />
I don&#8217;t think eval used on the client side is a big issue, unlike the server side when input variables are evaluated. So I don&#8217;t agree with the statement that eval is a lame solution. 
<br />
What's the worst thing that could happen? Since anyone can read the source and all the data is already passed to the browser it would be possible to execute anything through <code>javascript:doWhatIWant(with.myObject)</code> anyway ...
<br />

If you want to make the thing &#8220;secure&#8221; than check the propertyToUse against a list of allowed properties.

<br />
<br />

When we move to PHP code that&#8217;s a different story. In general you should always make sure that gets fed into a string which will be parsed by eval CANNOT contain anything malicious.<br />
<br />
&#8220;Never trust any user input!&#8221; ]]></content:encoded>
      <pubDate>Fri, 17 Jun 2005 15:29:10 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #20 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-167</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-167</guid>
      <description><![CDATA[Well&#8230;besides precious time and client-side processor-load, ... what IS the worst thing that could happen?]]></description>
      <content:encoded><![CDATA[Well&#8230;besides precious time and client-side processor-load, ... what IS the worst thing that could happen?]]></content:encoded>
      <pubDate>Sat, 18 Jun 2005 23:34:48 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #21 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-168</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-168</guid>
      <description><![CDATA[Eval isn&#8217;t the fastest thing since slicest bread, you might as well want to avoid it if that&#8217;s possible. Anyway, Mike, I already suggested a solution :) Here it is again, but with a code example:<br />
<br />
     this.locator = new PageLocator(function(){return window.location.href}, &#8221;#&#8221;);<br />
<br />
Inside PageLocator you simply execute the passed function, and you get the value.]]></description>
      <content:encoded><![CDATA[Eval isn&#8217;t the fastest thing since slicest bread, you might as well want to avoid it if that&#8217;s possible. Anyway, Mike, I already suggested a solution :) Here it is again, but with a code example:<br />
<br />
     this.locator = new PageLocator(function(){return window.location.href}, &#8221;#&#8221;);<br />
<br />
Inside PageLocator you simply execute the passed function, and you get the value.]]></content:encoded>
      <pubDate>Sun, 19 Jun 2005 15:34:07 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #22 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-169</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-169</guid>
      <description><![CDATA[@Mark: good suggestion, and yeah, definetly eval isn&#8217;t the FASTEST thing, so yeah, avoid it if possible &#8230; But the script doesn&#8217;t loop-execute a thousand evals, so I just don&#8217;t see the massive impact the one single use of eval would have had &#8230; I just don&#8217;t see where eval is EVIL &#8230;]]></description>
      <content:encoded><![CDATA[@Mark: good suggestion, and yeah, definetly eval isn&#8217;t the FASTEST thing, so yeah, avoid it if possible &#8230; But the script doesn&#8217;t loop-execute a thousand evals, so I just don&#8217;t see the massive impact the one single use of eval would have had &#8230; I just don&#8217;t see where eval is EVIL &#8230;]]></content:encoded>
      <pubDate>Mon, 20 Jun 2005 02:49:50 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #23 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-171</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-171</guid>
      <description><![CDATA[Eval has some necessary uses, though it&#8217;s slow because the parser has to go over each eval line twice: once to evaluate the statement, and once to execute it. Not a huge problem for small scripts, but not the most elegant solution either. I use eval sometimes to escape function literals (var foo = function(){/* bar */};) because they cause syntax errors in some older (now ancient) browsers. <br />
<br />
However, in your case, if you just need to evaluate a string as a variable name, why not use a string index of an associative array?<br />
<br />
if(this.validProperties[propertyToUse]){<br />
  return this.validProperties[propertyToUse]<br />
}]]></description>
      <content:encoded><![CDATA[Eval has some necessary uses, though it&#8217;s slow because the parser has to go over each eval line twice: once to evaluate the statement, and once to execute it. Not a huge problem for small scripts, but not the most elegant solution either. I use eval sometimes to escape function literals (var foo = function(){/* bar */};) because they cause syntax errors in some older (now ancient) browsers. <br />
<br />
However, in your case, if you just need to evaluate a string as a variable name, why not use a string index of an associative array?<br />
<br />
if(this.validProperties[propertyToUse]){<br />
  return this.validProperties[propertyToUse]<br />
}]]></content:encoded>
      <pubDate>Tue, 21 Jun 2005 17:25:08 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #24 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-172</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-172</guid>
      <description><![CDATA[Thanks for the snippet Mark &#8211; I really like that idea. I&#8217;ve been using the same method in some code I&#8217;ve been writing recently but I&#8217;d not made the connection back to this example. I would have made the changes the first time you posted but I&#8217;ve been incredibly busy&#8230;<br />
<br />
Thanks also to James. I&#8217;ve always tried to avoid eval but it&#8217;s been so long that I&#8217;d actually forgotten why. The reason I used it here is because I couldn&#8217;t think of a way to make the wrapper flexible enough to monitor a variety of properties. I have a tendency to get hung up on code flexibility&#8230; There&#8217;s an interesting article on exactly that by Marcus Baker in PHP Architect from back in February.]]></description>
      <content:encoded><![CDATA[Thanks for the snippet Mark &#8211; I really like that idea. I&#8217;ve been using the same method in some code I&#8217;ve been writing recently but I&#8217;d not made the connection back to this example. I would have made the changes the first time you posted but I&#8217;ve been incredibly busy&#8230;<br />
<br />
Thanks also to James. I&#8217;ve always tried to avoid eval but it&#8217;s been so long that I&#8217;d actually forgotten why. The reason I used it here is because I couldn&#8217;t think of a way to make the wrapper flexible enough to monitor a variety of properties. I have a tendency to get hung up on code flexibility&#8230; There&#8217;s an interesting article on exactly that by Marcus Baker in PHP Architect from back in February.]]></content:encoded>
      <pubDate>Tue, 21 Jun 2005 18:38:51 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #25 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-174</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-174</guid>
      <description><![CDATA[Good article Mike.<br />
<br />
If only Opera could fix their document.location bugs already.<br />
<br />
And yes, eval is evil. Any time you see it you should ask yourself why? The only valid reason to use it is to allow a user to enter code that you want to evaluate. In your case it seems what you want to pass as an argument is the location object (or as previously suggested a function returning the object in question).]]></description>
      <content:encoded><![CDATA[Good article Mike.<br />
<br />
If only Opera could fix their document.location bugs already.<br />
<br />
And yes, eval is evil. Any time you see it you should ask yourself why? The only valid reason to use it is to allow a user to enter code that you want to evaluate. In your case it seems what you want to pass as an argument is the location object (or as previously suggested a function returning the object in question).]]></content:encoded>
      <pubDate>Tue, 21 Jun 2005 23:08:34 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #26 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-175</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-175</guid>
      <description><![CDATA[This is a very classy solution, I like it. <br />
<br />
I wonder if someone could make a GMaps implementation where each drag results in a &#8216;reload&#8217; to the same page, but with javascript that scoops up the request, contained entirely in the #clause, and re-find the location&#8230; ???]]></description>
      <content:encoded><![CDATA[This is a very classy solution, I like it. <br />
<br />
I wonder if someone could make a GMaps implementation where each drag results in a &#8216;reload&#8217; to the same page, but with javascript that scoops up the request, contained entirely in the #clause, and re-find the location&#8230; ???]]></content:encoded>
      <pubDate>Thu, 23 Jun 2005 06:40:27 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #27 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-176</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-176</guid>
      <description><![CDATA[Excelent Solution!!!]]></description>
      <content:encoded><![CDATA[Excelent Solution!!!]]></content:encoded>
      <pubDate>Thu, 23 Jun 2005 17:53:25 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #28 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-177</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-177</guid>
      <description><![CDATA[Mike: That&#8217;s exactly what I&#8217;d like to see! The reason I did this in the first place was because Google Maps wasn&#8217;t easily bookmarkable&#8230; Maybe a Greasemonkey script?]]></description>
      <content:encoded><![CDATA[Mike: That&#8217;s exactly what I&#8217;d like to see! The reason I did this in the first place was because Google Maps wasn&#8217;t easily bookmarkable&#8230; Maybe a Greasemonkey script?]]></content:encoded>
      <pubDate>Thu, 23 Jun 2005 20:41:14 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #29 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-178</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-178</guid>
      <description><![CDATA[This demo (the download able) doesn&#8217;t work for me. The test.php is missing. Maybe I understood something wrong?]]></description>
      <content:encoded><![CDATA[This demo (the download able) doesn&#8217;t work for me. The test.php is missing. Maybe I understood something wrong?]]></content:encoded>
      <pubDate>Tue, 28 Jun 2005 09:26:49 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #30 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-179</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-179</guid>
      <description><![CDATA[Sorry about that Vert &#8211; don&#8217;t know when or why I removed test.php from the zip. It&#8217;s back in now so give it another go&#8230;]]></description>
      <content:encoded><![CDATA[Sorry about that Vert &#8211; don&#8217;t know when or why I removed test.php from the zip. It&#8217;s back in now so give it another go&#8230;]]></content:encoded>
      <pubDate>Wed, 29 Jun 2005 02:22:39 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #31 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-180</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-180</guid>
      <description><![CDATA[I must be the only mac user to post.  The script doesn&#8217;t seem to work on either Safari or IE5 for me.  <br />
In safari, the address bar does what it should do, and I can use the back button the way you intended it to be used.  However, the content on the page does not revert to previous states when the back button is pressed.<br />
On IE, the script works, but clicking on the side nav seems to dissacociate the page from it&#8217;s stylesheet,]]></description>
      <content:encoded><![CDATA[I must be the only mac user to post.  The script doesn&#8217;t seem to work on either Safari or IE5 for me.  <br />
In safari, the address bar does what it should do, and I can use the back button the way you intended it to be used.  However, the content on the page does not revert to previous states when the back button is pressed.<br />
On IE, the script works, but clicking on the side nav seems to dissacociate the page from it&#8217;s stylesheet,]]></content:encoded>
      <pubDate>Thu, 30 Jun 2005 09:16:37 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #32 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-182</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-182</guid>
      <description><![CDATA[The script doesn&#8217;t work in iE/Mac &#8211; I&#8217;ve stopped developing for it as of this year. It&#8217;s usage for the sites I work on has dropped below the 1% threshold. When you click on the links you are taken to the static version of the content, generated server side, which I&#8217;ve not styled.<br />
<br />
This did work on Safari 1.2 but I&#8217;ve not tried it on the newest release. Well, I say work&#8230; See the browser support table at the end of the article. Bookmarking worked but the back button remained broken. Maybe 1.3 has changed something&#8230;]]></description>
      <content:encoded><![CDATA[The script doesn&#8217;t work in iE/Mac &#8211; I&#8217;ve stopped developing for it as of this year. It&#8217;s usage for the sites I work on has dropped below the 1% threshold. When you click on the links you are taken to the static version of the content, generated server side, which I&#8217;ve not styled.<br />
<br />
This did work on Safari 1.2 but I&#8217;ve not tried it on the newest release. Well, I say work&#8230; See the browser support table at the end of the article. Bookmarking worked but the back button remained broken. Maybe 1.3 has changed something&#8230;]]></content:encoded>
      <pubDate>Thu, 30 Jun 2005 16:00:41 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #33 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-184</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-184</guid>
      <description><![CDATA[I say eval() is a necessary evil since Javascript has almost no support for reflection. (No way to dynamically call functions, dynamically assign variables, etc.)]]></description>
      <content:encoded><![CDATA[I say eval() is a necessary evil since Javascript has almost no support for reflection. (No way to dynamically call functions, dynamically assign variables, etc.)]]></content:encoded>
      <pubDate>Sat, 02 Jul 2005 04:23:14 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #34 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-186</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-186</guid>
      <description><![CDATA[Good work Mike, this has been an issue of mine for the MP3 site &#8211; i&#8217;ll be in touch. Glad to also hear your thoughts on IE Mac &#8211; i&#8217;ve been trying to (unsucessfully) steer clients in that direction. Easy&#8230;]]></description>
      <content:encoded><![CDATA[Good work Mike, this has been an issue of mine for the MP3 site &#8211; i&#8217;ll be in touch. Glad to also hear your thoughts on IE Mac &#8211; i&#8217;ve been trying to (unsucessfully) steer clients in that direction. Easy&#8230;]]></content:encoded>
      <pubDate>Fri, 08 Jul 2005 16:39:27 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #35 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-187</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-187</guid>
      <description><![CDATA[I wrote my script mostly from scratch, but I got the concept from here, I think it&#8217;s a little simpler than yours, and may have a few better methods. <a href="http://www.chudosok.info/21/">chudosok.info 2.1</a><br />
Any comments or suggestions?]]></description>
      <content:encoded><![CDATA[I wrote my script mostly from scratch, but I got the concept from here, I think it&#8217;s a little simpler than yours, and may have a few better methods. <a href="http://www.chudosok.info/21/">chudosok.info 2.1</a><br />
Any comments or suggestions?]]></content:encoded>
      <pubDate>Sat, 09 Jul 2005 06:55:50 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #36 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-190</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-190</guid>
      <description><![CDATA[Hi. This leads me to wonder if the same solution can be used for solving similar problems for frames which more or less achieve the same thing if you are just using ajax for bringing in a navigation bar that doesn&#8217;t keep refreshing.]]></description>
      <content:encoded><![CDATA[Hi. This leads me to wonder if the same solution can be used for solving similar problems for frames which more or less achieve the same thing if you are just using ajax for bringing in a navigation bar that doesn&#8217;t keep refreshing.]]></content:encoded>
      <pubDate>Sat, 16 Jul 2005 03:51:52 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #37 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-191</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-191</guid>
      <description><![CDATA[In comment 7, Jonathan made an important point, this completely breaks if JS is turned off, the point is important because it does not have to break!<br />
<br />
in the links pointing to content.php you can add a parameter to the url  hash=n&#38;nojs=true, in php if you see this parameter you also include the header and footer of the page, this way people who have js disabled will be loading content.php the old way AND getting the same page (with the black strips on top and bottom) ,  for people with JS enabled the href is rewritten using javascript (removing the nojs=true and using the # hack) and they will use ajax just like they are doing now!<br />
<br />
I hope this was clear enough!]]></description>
      <content:encoded><![CDATA[In comment 7, Jonathan made an important point, this completely breaks if JS is turned off, the point is important because it does not have to break!<br />
<br />
in the links pointing to content.php you can add a parameter to the url  hash=n&#38;nojs=true, in php if you see this parameter you also include the header and footer of the page, this way people who have js disabled will be loading content.php the old way AND getting the same page (with the black strips on top and bottom) ,  for people with JS enabled the href is rewritten using javascript (removing the nojs=true and using the # hack) and they will use ajax just like they are doing now!<br />
<br />
I hope this was clear enough!]]></content:encoded>
      <pubDate>Thu, 21 Jul 2005 09:11:22 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #38 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-192</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-192</guid>
      <description><![CDATA[I think I see what you mean Pat. As it is, if you turn off your JS, go to the demo and click the links they will still bring back your content, via a separate page that uses the same content-generating class server side but without any styling. I didn&#8217;t hook that page up to my CSS because my interest lay with the front end and the usability problem presented&#8230; It&#8217;s a separate page so there&#8217;s no need to pass in extra querystring params. To be honest, the server side bit isn&#8217;t very elegant but my main focus was the front end.<br />
<br />
There are enough great suggestions here to warrant an upgrade to the article but I just haven&#8217;t had time to do it, although Nobody (35) may have beaten me to it anyway!]]></description>
      <content:encoded><![CDATA[I think I see what you mean Pat. As it is, if you turn off your JS, go to the demo and click the links they will still bring back your content, via a separate page that uses the same content-generating class server side but without any styling. I didn&#8217;t hook that page up to my CSS because my interest lay with the front end and the usability problem presented&#8230; It&#8217;s a separate page so there&#8217;s no need to pass in extra querystring params. To be honest, the server side bit isn&#8217;t very elegant but my main focus was the front end.<br />
<br />
There are enough great suggestions here to warrant an upgrade to the article but I just haven&#8217;t had time to do it, although Nobody (35) may have beaten me to it anyway!]]></content:encoded>
      <pubDate>Fri, 22 Jul 2005 02:10:09 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #39 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-193</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-193</guid>
      <description><![CDATA[If someone could tell me where I can find the Ajax part please do, but this has nothing todo with Ajax. Do not want to be offence, but this solution is a definite no go when utilizing xmlHttpRequest. Good for making ignorant people all excited but also only usefull if you can really set a history object with an iframe and totally not useless in a so called Ajax application.<br />
<br />
There is no fix, and it is technically impossible within current browsers. The use of Ajax on the frontend is the only thing that is wrong. People use it in the wrong way.<br />
<br />
Use it because you need it, not because it is cool.]]></description>
      <content:encoded><![CDATA[If someone could tell me where I can find the Ajax part please do, but this has nothing todo with Ajax. Do not want to be offence, but this solution is a definite no go when utilizing xmlHttpRequest. Good for making ignorant people all excited but also only usefull if you can really set a history object with an iframe and totally not useless in a so called Ajax application.<br />
<br />
There is no fix, and it is technically impossible within current browsers. The use of Ajax on the frontend is the only thing that is wrong. People use it in the wrong way.<br />
<br />
Use it because you need it, not because it is cool.]]></content:encoded>
      <pubDate>Fri, 22 Jul 2005 21:56:24 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #40 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-194</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-194</guid>
      <description><![CDATA[Mr. Schopman, I think you didn&#8217;t propperly take time understand the scope of this article. Mike is not coding an AJAX application here, but pointing out a possible solution for a common problem occurring with AJAX applications.<br />
This has nothing to do with beeing cool but is an approach for all those who do use AJAX but find that the back button isn&#8217;t just a useless thing in the top corner of the browser.<br />
<br />
Whether people that are actually building AJAX applications and maybe incorporating this solution into their AJAX application are ignorant this might be your point of view, but we don&#8217;t necessarily agree with you at that point.<br />
<br />
However, the only useful points you really made are<br />
<br />
a) You should use things because they make sense<br />
b) You might not be able to use an iframe in your application, therefore the solution mike suggested could not be for you<br />
<br />
<em>To all other posters in here, please watch your tone, I don&#8217;t think it&#8217;s necessary to be as impolite as Mr Schopman. We are no big fans of editing user comments, but we are no big fans of a rude tone either</em>]]></description>
      <content:encoded><![CDATA[Mr. Schopman, I think you didn&#8217;t propperly take time understand the scope of this article. Mike is not coding an AJAX application here, but pointing out a possible solution for a common problem occurring with AJAX applications.<br />
This has nothing to do with beeing cool but is an approach for all those who do use AJAX but find that the back button isn&#8217;t just a useless thing in the top corner of the browser.<br />
<br />
Whether people that are actually building AJAX applications and maybe incorporating this solution into their AJAX application are ignorant this might be your point of view, but we don&#8217;t necessarily agree with you at that point.<br />
<br />
However, the only useful points you really made are<br />
<br />
a) You should use things because they make sense<br />
b) You might not be able to use an iframe in your application, therefore the solution mike suggested could not be for you<br />
<br />
<em>To all other posters in here, please watch your tone, I don&#8217;t think it&#8217;s necessary to be as impolite as Mr Schopman. We are no big fans of editing user comments, but we are no big fans of a rude tone either</em>]]></content:encoded>
      <pubDate>Sat, 23 Jul 2005 16:08:23 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #41 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-197</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-197</guid>
      <description><![CDATA[Yep, as Pascal said, this article is less about AJAX itself and more about usability. If anyone needs a reality check on AJAX and its related technologies I highly recommend Marcus Baker&#8217;s article <a href="http://www.lastcraft.com/blog/index.php?p=19">Listen kids, AJAX is not cool</a>.]]></description>
      <content:encoded><![CDATA[Yep, as Pascal said, this article is less about AJAX itself and more about usability. If anyone needs a reality check on AJAX and its related technologies I highly recommend Marcus Baker&#8217;s article <a href="http://www.lastcraft.com/blog/index.php?p=19">Listen kids, AJAX is not cool</a>.]]></content:encoded>
      <pubDate>Mon, 25 Jul 2005 17:00:10 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #42 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-199</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-199</guid>
      <description><![CDATA[When I go to the demo page, http://www.contentwithstyle.co.uk/resources/ajax-nav/#1, I get errors in a dialog saying only Only variables should be assigned by reference etc. in both IE and FireFox. Any ideas?]]></description>
      <content:encoded><![CDATA[When I go to the demo page, http://www.contentwithstyle.co.uk/resources/ajax-nav/#1, I get errors in a dialog saying only Only variables should be assigned by reference etc. in both IE and FireFox. Any ideas?]]></content:encoded>
      <pubDate>Wed, 27 Jul 2005 18:38:26 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #43 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-200</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-200</guid>
      <description><![CDATA[Hi tester.<br />
<br />
This is a problem with JPSpan and PHP 4.4. My hosting provider just upgraded from 4.x to 4.4, therefore the unexpected error.<br />
<br />
We&#8217;ll fix that ASAP.]]></description>
      <content:encoded><![CDATA[Hi tester.<br />
<br />
This is a problem with JPSpan and PHP 4.4. My hosting provider just upgraded from 4.x to 4.4, therefore the unexpected error.<br />
<br />
We&#8217;ll fix that ASAP.]]></content:encoded>
      <pubDate>Thu, 28 Jul 2005 18:26:26 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #44 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-201</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-201</guid>
      <description><![CDATA[Hi,<br />
<br />
Thanks for writing fix for back button problem with AJAX.<br />
<br />
Well, i am trying to fix this problem by utilising your code but I am not using JPSPAN function for AJAX. I am simply using XMLHTTP object and its function to make request to my server side php and getting html data ( i don&#8217;t need xml data).<br />
<br />
I am not sure whether your fix will work for all the AJAX code. But i will appreciate if you change it to be compatible and generic for all AJAX. As of now, with your scripts I am totally confused to use what and where? Can you please write a small paragraph on how to plug this into any AJAX code. I am not JS expert nor I am AJAX expert.<br />
<br />
And I do have real time monitoring system which uses ajax and in my page there are four frames which are requesting to server and loading data in real time.<br />
<br />
Any help in this will be greatly appreciated.<br />
<br />
Cheers!]]></description>
      <content:encoded><![CDATA[Hi,<br />
<br />
Thanks for writing fix for back button problem with AJAX.<br />
<br />
Well, i am trying to fix this problem by utilising your code but I am not using JPSPAN function for AJAX. I am simply using XMLHTTP object and its function to make request to my server side php and getting html data ( i don&#8217;t need xml data).<br />
<br />
I am not sure whether your fix will work for all the AJAX code. But i will appreciate if you change it to be compatible and generic for all AJAX. As of now, with your scripts I am totally confused to use what and where? Can you please write a small paragraph on how to plug this into any AJAX code. I am not JS expert nor I am AJAX expert.<br />
<br />
And I do have real time monitoring system which uses ajax and in my page there are four frames which are requesting to server and loading data in real time.<br />
<br />
Any help in this will be greatly appreciated.<br />
<br />
Cheers!]]></content:encoded>
      <pubDate>Fri, 29 Jul 2005 00:59:25 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #45 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-202</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-202</guid>
      <description><![CDATA[The bits of the code that call the back-end are &#8216;function doGetPage(i)&#8217; and &#8216;var PageHolderHandler&#8217;. I&#8217;ve not looked into exactly how they&#8217;re hooked up to my PHP &#8211; I&#8217;ve let the magic of <a href="http://jpspan.sourceforge.net/wiki/doku.php">JPSpan</a> take care of that for me. If your code is OO then I highly recommend JPSpan &#8211; it exposes your server-side methods to your client side code in a matter of minutes&#8230;<br />
<br />
You say you have 4 frames&#8230; Do you mean frames, as in the HTML element? That might break my fix since I use an iFrame exploit to get the whole thing working in IE.]]></description>
      <content:encoded><![CDATA[The bits of the code that call the back-end are &#8216;function doGetPage(i)&#8217; and &#8216;var PageHolderHandler&#8217;. I&#8217;ve not looked into exactly how they&#8217;re hooked up to my PHP &#8211; I&#8217;ve let the magic of <a href="http://jpspan.sourceforge.net/wiki/doku.php">JPSpan</a> take care of that for me. If your code is OO then I highly recommend JPSpan &#8211; it exposes your server-side methods to your client side code in a matter of minutes&#8230;<br />
<br />
You say you have 4 frames&#8230; Do you mean frames, as in the HTML element? That might break my fix since I use an iFrame exploit to get the whole thing working in IE.]]></content:encoded>
      <pubDate>Fri, 29 Jul 2005 01:58:03 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #46 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-203</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-203</guid>
      <description><![CDATA[Hi Mike,<br />
Thanks for responding and informing me about the firing methods.<br />
<br />
Well, I will try to use that into my code and see whether I can use it or not.<br />
<br />
Yes, i do have 4 frames (html) element in my page and each of them is auto refreshing. Out of these one is hidden (triggering frame) and other three are data pulling frames from the server.<br />
<br />
Well I am trying to support my application on FF first and if that works then 90% work done. <br />
<br />
Thanks once again.<br />
<br />
Cheers!<br />
Dipesh]]></description>
      <content:encoded><![CDATA[Hi Mike,<br />
Thanks for responding and informing me about the firing methods.<br />
<br />
Well, I will try to use that into my code and see whether I can use it or not.<br />
<br />
Yes, i do have 4 frames (html) element in my page and each of them is auto refreshing. Out of these one is hidden (triggering frame) and other three are data pulling frames from the server.<br />
<br />
Well I am trying to support my application on FF first and if that works then 90% work done. <br />
<br />
Thanks once again.<br />
<br />
Cheers!<br />
Dipesh]]></content:encoded>
      <pubDate>Fri, 29 Jul 2005 19:17:09 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #47 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-204</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-204</guid>
      <description><![CDATA[If you want, Dipesh, you can look at the source code on <a href="http://www.chudosok.info/21">chudosok</a> It uses pure XMLHTTPRequest for getting back html.]]></description>
      <content:encoded><![CDATA[If you want, Dipesh, you can look at the source code on <a href="http://www.chudosok.info/21">chudosok</a> It uses pure XMLHTTPRequest for getting back html.]]></content:encoded>
      <pubDate>Sun, 31 Jul 2005 04:07:42 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #48 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-205</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-205</guid>
      <description><![CDATA[The problem with <a href="http://www.donotremove.co.uk/extra/ajax-nav/">http://www.donotremove.co.uk/extra/ajax-nav/</a> is that you can&#8217;t open in new window in Internet Explorer and it won&#8217;t work at all in Opera. <a href="http://www.chudosok.info/21">chudosok</a> works in all except if you browse too fast in Opera. It&#8217;d be nice if you tried some of my code.]]></description>
      <content:encoded><![CDATA[The problem with <a href="http://www.donotremove.co.uk/extra/ajax-nav/">http://www.donotremove.co.uk/extra/ajax-nav/</a> is that you can&#8217;t open in new window in Internet Explorer and it won&#8217;t work at all in Opera. <a href="http://www.chudosok.info/21">chudosok</a> works in all except if you browse too fast in Opera. It&#8217;d be nice if you tried some of my code.]]></content:encoded>
      <pubDate>Sun, 31 Jul 2005 04:23:43 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #49 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-206</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-206</guid>
      <description><![CDATA[One more thing, I don&#8217;t want to say I&#8217;m better, after all I did get the idea from you. Thanks.]]></description>
      <content:encoded><![CDATA[One more thing, I don&#8217;t want to say I&#8217;m better, after all I did get the idea from you. Thanks.]]></content:encoded>
      <pubDate>Sun, 31 Jul 2005 04:25:43 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #50 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-208</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-208</guid>
      <description><![CDATA[No offense taken! I look forward to examining your method when I&#8217;ve got a little more time&#8230;]]></description>
      <content:encoded><![CDATA[No offense taken! I look forward to examining your method when I&#8217;ve got a little more time&#8230;]]></content:encoded>
      <pubDate>Mon, 01 Aug 2005 15:28:29 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #51 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-210</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-210</guid>
      <description><![CDATA[Hi Nobody,<br />
<br />
Well i tried to go to your site to see the generic solution. Is your site in some different language, i can&#8217;t understand those language ? I went to the following site:<br />
<br />
http://www.chudosok.info/21/<br />
<br />
My problem is with the back button, i have already created real time monitoring system using AJAX. <br />
<br />
Looking forward to hear from you.<br />
<br />
Cheers!]]></description>
      <content:encoded><![CDATA[Hi Nobody,<br />
<br />
Well i tried to go to your site to see the generic solution. Is your site in some different language, i can&#8217;t understand those language ? I went to the following site:<br />
<br />
http://www.chudosok.info/21/<br />
<br />
My problem is with the back button, i have already created real time monitoring system using AJAX. <br />
<br />
Looking forward to hear from you.<br />
<br />
Cheers!]]></content:encoded>
      <pubDate>Mon, 01 Aug 2005 22:51:33 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #52 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-211</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-211</guid>
      <description><![CDATA[The site is in Russian, but the javascript isn&#8217;t, lol. The information on the website has nothing to do with ajax, but it loads the data via ajax and also supports the back button. I&#8217;m saying you can take the source if you like, sorry that&#8217;s it&#8217;s not commented though.<br />
<br />
God Bless.]]></description>
      <content:encoded><![CDATA[The site is in Russian, but the javascript isn&#8217;t, lol. The information on the website has nothing to do with ajax, but it loads the data via ajax and also supports the back button. I&#8217;m saying you can take the source if you like, sorry that&#8217;s it&#8217;s not commented though.<br />
<br />
God Bless.]]></content:encoded>
      <pubDate>Tue, 02 Aug 2005 02:25:16 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #53 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-212</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-212</guid>
      <description><![CDATA[Ok, I made a cut-down, half-English, commented version to make it easier on you.<br />
<a href="http://www.chudosok.info/commented/">http://www.chudosok.info/commented/</a>]]></description>
      <content:encoded><![CDATA[Ok, I made a cut-down, half-English, commented version to make it easier on you.<br />
<a href="http://www.chudosok.info/commented/">http://www.chudosok.info/commented/</a>]]></content:encoded>
      <pubDate>Tue, 02 Aug 2005 03:43:04 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #54 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-213</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-213</guid>
      <description><![CDATA[Hi Mike<br />
<br />
The code fix is good and would do the job for simple pages. The way I have written my ajax application is that it has a mvc pattern on the browser tier and performs view rendering on the client.<br />
this should have been &#8221; backable &#8221; using ur style but the issue we face is with handling multiple views.. <br />
a user interaction triggers view updates in multiple views on the page. so a back button click or a bookmark operation would involve remembering the state of all the views.<br />
any ideas on such a scenario..]]></description>
      <content:encoded><![CDATA[Hi Mike<br />
<br />
The code fix is good and would do the job for simple pages. The way I have written my ajax application is that it has a mvc pattern on the browser tier and performs view rendering on the client.<br />
this should have been &#8221; backable &#8221; using ur style but the issue we face is with handling multiple views.. <br />
a user interaction triggers view updates in multiple views on the page. so a back button click or a bookmark operation would involve remembering the state of all the views.<br />
any ideas on such a scenario..]]></content:encoded>
      <pubDate>Tue, 02 Aug 2005 10:58:36 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #55 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-214</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-214</guid>
      <description><![CDATA[hi,<br />
<br />
Thanks for replying and putting commented files on your site. Greatly appreciated.<br />
<br />
It is still customized to your page, (it has all the elements which you have created in your html) and it is  tailored like that. I am not JS expert, but as far as I could make out, following javascript  functions must be related to page history :<br />
<br />
1) chkURL() &gt; This function you must be calling on load. Am i right ? This is so that it can check the URL and store it.<br />
<br />
2) getPageN() > Get this page number from the history?<br />
<br />
3) getPageName() &gt; This is for your contact page thing?<br />
<br />
4) getPage() > requesting this page and displaying it in the browser?<br />
<br />
Well, the major problem which i see in using this is  I am using 4 frames. There is no event based display of the pages, I am refreshing screen if something is happening at the back end and displaying it to the client. For this I have 4 frames in the page, which has different data and I am updating this data. <br />
<br />
Does your solution still fits into my architecture?<br />
<br />
Thanks once again for writing commented version of your code.<br />
<br />
Regards,<br />
Dipesh]]></description>
      <content:encoded><![CDATA[hi,<br />
<br />
Thanks for replying and putting commented files on your site. Greatly appreciated.<br />
<br />
It is still customized to your page, (it has all the elements which you have created in your html) and it is  tailored like that. I am not JS expert, but as far as I could make out, following javascript  functions must be related to page history :<br />
<br />
1) chkURL() &gt; This function you must be calling on load. Am i right ? This is so that it can check the URL and store it.<br />
<br />
2) getPageN() > Get this page number from the history?<br />
<br />
3) getPageName() &gt; This is for your contact page thing?<br />
<br />
4) getPage() > requesting this page and displaying it in the browser?<br />
<br />
Well, the major problem which i see in using this is  I am using 4 frames. There is no event based display of the pages, I am refreshing screen if something is happening at the back end and displaying it to the client. For this I have 4 frames in the page, which has different data and I am updating this data. <br />
<br />
Does your solution still fits into my architecture?<br />
<br />
Thanks once again for writing commented version of your code.<br />
<br />
Regards,<br />
Dipesh]]></content:encoded>
      <pubDate>Tue, 02 Aug 2005 19:58:47 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #56 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-215</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-215</guid>
      <description><![CDATA[chkURL() is a like a timer loop that checks whether or not the url has changed, historywise or not. It is started up 100 milliseconds after load. The extra ie.htm and ie.js help Internet Explorer change the url when the back or forward button is clicked.<br />
<br />
getPageN() is fired on url change, which checks if the url is valid, then tells getPage() which page to load and display.<br />
<br />
getPageName() disects the url to get the name of the page. This is used for loading the needed page, for checking whether the url has changed, etc.<br />
<br />
True,<br />
function getPageName() is invloved in the history.<br />
function chkURL() is one of the main functions involved in history, but also in navigating by links.<br />
<br />
var lastURL stores the last url to check against when navigating.<br />
<br />
ie.js and ie.htm which are included in this manner:<br />
<br />
and fired at startup like:<br />
]]></description>
      <content:encoded><![CDATA[chkURL() is a like a timer loop that checks whether or not the url has changed, historywise or not. It is started up 100 milliseconds after load. The extra ie.htm and ie.js help Internet Explorer change the url when the back or forward button is clicked.<br />
<br />
getPageN() is fired on url change, which checks if the url is valid, then tells getPage() which page to load and display.<br />
<br />
getPageName() disects the url to get the name of the page. This is used for loading the needed page, for checking whether the url has changed, etc.<br />
<br />
True,<br />
function getPageName() is invloved in the history.<br />
function chkURL() is one of the main functions involved in history, but also in navigating by links.<br />
<br />
var lastURL stores the last url to check against when navigating.<br />
<br />
ie.js and ie.htm which are included in this manner:<br />
<br />
and fired at startup like:<br />
]]></content:encoded>
      <pubDate>Wed, 03 Aug 2005 00:16:14 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #57 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-216</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-216</guid>
      <description><![CDATA[oops, part of my post got cut off because of the tag stuff<br />
<br />
chkURL() is a like a timer loop that checks whether or not the url has changed, historywise or not. It is started up 100 milliseconds after load. The extra ie.htm and ie.js help Internet Explorer change the url when the back or forward button is clicked.<br />
<br />
getPageN() is fired on url change, which checks if the url is valid, then tells getPage() which page to load and display.<br />
<br />
getPageName() disects the url to get the name of the page. This is used for loading the needed page, for checking whether the url has changed, etc.<br />
<br />
True,<br />
function getPageName() is invloved in the history.<br />
function chkURL() is one of the main functions involved in history, but also in navigating by links.<br />
<br />
var lastURL stores the last url to check against when navigating.<br />
<br />
ie.js and ie.htm which are included in this manner:<br />
    {!&#8212;[if IE]}<br />
    {script type=&#8221;text/javascript&#8221; src=&#8221;ie.js&#8221;}{/script}<br />
    {![endif]&#8212;}<br />
and fired at startup like:<br />
{body onload=&#8221;try{if(ieLoader){ieLoader();}}catch(e){}...<br />
<br />
just replace {}  with the the tag thingies<br />
<br />
are required for it to function in Internet Explorer and are only for history, so all the functions there are for history.<br />
<br />
I think what you&#8217;re doing is similar to how gmail auto-updates the user&#8217;s inbox. If you need people to navigate back in your app, this wil work. All you need is to have people navigate by page.htm#wheretogo and have the chkURL() fire a function to deal with the wheretogo when it changes.<br />
<br />
And you&#8217;re welcome.]]></description>
      <content:encoded><![CDATA[oops, part of my post got cut off because of the tag stuff<br />
<br />
chkURL() is a like a timer loop that checks whether or not the url has changed, historywise or not. It is started up 100 milliseconds after load. The extra ie.htm and ie.js help Internet Explorer change the url when the back or forward button is clicked.<br />
<br />
getPageN() is fired on url change, which checks if the url is valid, then tells getPage() which page to load and display.<br />
<br />
getPageName() disects the url to get the name of the page. This is used for loading the needed page, for checking whether the url has changed, etc.<br />
<br />
True,<br />
function getPageName() is invloved in the history.<br />
function chkURL() is one of the main functions involved in history, but also in navigating by links.<br />
<br />
var lastURL stores the last url to check against when navigating.<br />
<br />
ie.js and ie.htm which are included in this manner:<br />
    {!&#8212;[if IE]}<br />
    {script type=&#8221;text/javascript&#8221; src=&#8221;ie.js&#8221;}{/script}<br />
    {![endif]&#8212;}<br />
and fired at startup like:<br />
{body onload=&#8221;try{if(ieLoader){ieLoader();}}catch(e){}...<br />
<br />
just replace {}  with the the tag thingies<br />
<br />
are required for it to function in Internet Explorer and are only for history, so all the functions there are for history.<br />
<br />
I think what you&#8217;re doing is similar to how gmail auto-updates the user&#8217;s inbox. If you need people to navigate back in your app, this wil work. All you need is to have people navigate by page.htm#wheretogo and have the chkURL() fire a function to deal with the wheretogo when it changes.<br />
<br />
And you&#8217;re welcome.]]></content:encoded>
      <pubDate>Wed, 03 Aug 2005 00:21:45 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #58 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-226</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-226</guid>
      <description><![CDATA[doesnt&#8217; works for opera 8 browser :/]]></description>
      <content:encoded><![CDATA[doesnt&#8217; works for opera 8 browser :/]]></content:encoded>
      <pubDate>Mon, 29 Aug 2005 09:06:08 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #59 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-228</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-228</guid>
      <description><![CDATA[>doesnt&#8217; works for opera 8 browser :/<br />
<br />
Mine or Mike&#8217;s?]]></description>
      <content:encoded><![CDATA[>doesnt&#8217; works for opera 8 browser :/<br />
<br />
Mine or Mike&#8217;s?]]></content:encoded>
      <pubDate>Tue, 30 Aug 2005 18:29:36 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #60 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-250</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-250</guid>
      <description><![CDATA[&#8212;> doesn&#8217;t work if you turn Javascript off<br />
<br />
so when are people going to stop saying this about AJAX stuff? You know Async JAVASCRIPT and XML?<br />
<br />
We know that AJAX stuff doesn&#8217;t work if Javascript is turned off. WE KNOW.<br />
<br />
If Javascript isn&#8217;t turned off then we don&#8217;t need to worry about bookmarking where we are in an AJAX app do we?<br />
<br />
Sorry&#8230;just tired of seeing that comment EVERYWHERE.]]></description>
      <content:encoded><![CDATA[&#8212;> doesn&#8217;t work if you turn Javascript off<br />
<br />
so when are people going to stop saying this about AJAX stuff? You know Async JAVASCRIPT and XML?<br />
<br />
We know that AJAX stuff doesn&#8217;t work if Javascript is turned off. WE KNOW.<br />
<br />
If Javascript isn&#8217;t turned off then we don&#8217;t need to worry about bookmarking where we are in an AJAX app do we?<br />
<br />
Sorry&#8230;just tired of seeing that comment EVERYWHERE.]]></content:encoded>
      <pubDate>Wed, 28 Sep 2005 20:22:32 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #61 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-275</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-275</guid>
      <description><![CDATA[&#8220;What can be changed in the URL that won&#8217;t trigger a page reload? The hash portion.&#8221;<br />
<br />
Brilliantly simple.  Genius, even.  Thanks for the great article!]]></description>
      <content:encoded><![CDATA[&#8220;What can be changed in the URL that won&#8217;t trigger a page reload? The hash portion.&#8221;<br />
<br />
Brilliantly simple.  Genius, even.  Thanks for the great article!]]></content:encoded>
      <pubDate>Thu, 20 Oct 2005 05:20:56 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #62 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-277</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-277</guid>
      <description><![CDATA[@Nobody &#8211; Could you please show the code for the /commented/data.php file.]]></description>
      <content:encoded><![CDATA[@Nobody &#8211; Could you please show the code for the /commented/data.php file.]]></content:encoded>
      <pubDate>Sun, 23 Oct 2005 20:25:30 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #63 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-281</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-281</guid>
      <description><![CDATA[Mike:<br />
<br />
The error:<br />
<br />
[Server+Error][2000] Only variables should be assigned by reference<br />
Method called: pageholder.as html()<br />
<br />
still exists, even though it was committed to being fixed back in July (ref. comments 42 and 43).<br />
<br />
I would really be interested in looking at this as I have an urgent need for some reasonably way of handling the back button issue, even if it&#8217;s not perfect.<br />
<br />
Any chance this can be addressed in the very near future?<br />
 &#8211; Thanks!<br />
<br />
Jim]]></description>
      <content:encoded><![CDATA[Mike:<br />
<br />
The error:<br />
<br />
[Server+Error][2000] Only variables should be assigned by reference<br />
Method called: pageholder.as html()<br />
<br />
still exists, even though it was committed to being fixed back in July (ref. comments 42 and 43).<br />
<br />
I would really be interested in looking at this as I have an urgent need for some reasonably way of handling the back button issue, even if it&#8217;s not perfect.<br />
<br />
Any chance this can be addressed in the very near future?<br />
 &#8211; Thanks!<br />
<br />
Jim]]></content:encoded>
      <pubDate>Thu, 27 Oct 2005 04:50:25 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #64 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-282</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-282</guid>
      <description><![CDATA[It actually was fixed! That error is due to some changes in PHP4.40 that have affected the version of JPSPAN that I&#8217;m using. I moved the demo to my webhost that until this week was running on PHP4.3 but it looks like they&#8217;ve now upgraded. I&#8217;ll fix it AGAIN. Sorry for any delay Jim.]]></description>
      <content:encoded><![CDATA[It actually was fixed! That error is due to some changes in PHP4.40 that have affected the version of JPSPAN that I&#8217;m using. I moved the demo to my webhost that until this week was running on PHP4.3 but it looks like they&#8217;ve now upgraded. I&#8217;ll fix it AGAIN. Sorry for any delay Jim.]]></content:encoded>
      <pubDate>Thu, 27 Oct 2005 06:41:46 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #65 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-283</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-283</guid>
      <description><![CDATA[Right, I&#8217;ve moved the demo to my dev server so it&#8217;s up and running again, this time under PHP5. There is a bug report on the JPSPAN sourceforge page about the PHP4.4.0 problem but nothing&#8217;s been done about it yet. I guess Harry&#8217;s busy&#8230;]]></description>
      <content:encoded><![CDATA[Right, I&#8217;ve moved the demo to my dev server so it&#8217;s up and running again, this time under PHP5. There is a bug report on the JPSPAN sourceforge page about the PHP4.4.0 problem but nothing&#8217;s been done about it yet. I guess Harry&#8217;s busy&#8230;]]></content:encoded>
      <pubDate>Thu, 27 Oct 2005 08:42:24 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #66 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-284</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-284</guid>
      <description><![CDATA[Mike:<br />
<br />
Thank you!<br />
<br />
I have scoured the web and yours seems the most viable solution.<br />
<br />
Those of us serious about using modern technologies in our dynamically generated web apps must have a reliable way of dealing with the legacy issues that will always be with us &#8211; those  left over from the days when all web pages were static.<br />
<br />
I am most anxious to view/study your solution.<br />
<br />
Thanks, again.<br />
<br />
Jim]]></description>
      <content:encoded><![CDATA[Mike:<br />
<br />
Thank you!<br />
<br />
I have scoured the web and yours seems the most viable solution.<br />
<br />
Those of us serious about using modern technologies in our dynamically generated web apps must have a reliable way of dealing with the legacy issues that will always be with us &#8211; those  left over from the days when all web pages were static.<br />
<br />
I am most anxious to view/study your solution.<br />
<br />
Thanks, again.<br />
<br />
Jim]]></content:encoded>
      <pubDate>Thu, 27 Oct 2005 13:32:27 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #67 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-285</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-285</guid>
      <description><![CDATA[Mike:<br />
<br />
Can you share what the PHP 4.4.0 fix is?<br />
<br />
Thank you.<br />
<br />
(You&#8217;re right about Harry. Haven&#8217;t seen him any of the usual places for a very long time.)<br />
<br />
Jim]]></description>
      <content:encoded><![CDATA[Mike:<br />
<br />
Can you share what the PHP 4.4.0 fix is?<br />
<br />
Thank you.<br />
<br />
(You&#8217;re right about Harry. Haven&#8217;t seen him any of the usual places for a very long time.)<br />
<br />
Jim]]></content:encoded>
      <pubDate>Thu, 27 Oct 2005 22:07:44 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #68 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-286</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-286</guid>
      <description><![CDATA[Jim, if you look up the comments a bit you&#8217;ll see a link from a chap calling himself &#8216;Nobody&#8217; to an implementation he&#8217;s come up with. He says it&#8217;s simpler than mine but I just haven&#8217;t had the time to dissect it myself. Might be worth a look if you&#8217;re starting from scratch though&#8230;<br />
<br />
From what I can gather the good folk behind PHP have decided to tighten up their pass-by-reference handling and creating new objects. I don&#8217;t know the ins and outs of it to be honest. I had several days of listening to Marcus complain about the changes he was having to make to <a href="http://www.simpletest.org">SimpleTest</a> but that&#8217;s about my lot! There&#8217;s a decent explanation on SitePoint though: <a href="http://www.sitepoint.com/blogs/2005/07/30/php-44-minor-gotcha/">PHP 4.4 Minor Gotcha</a>. Hope that helps&#8230;]]></description>
      <content:encoded><![CDATA[Jim, if you look up the comments a bit you&#8217;ll see a link from a chap calling himself &#8216;Nobody&#8217; to an implementation he&#8217;s come up with. He says it&#8217;s simpler than mine but I just haven&#8217;t had the time to dissect it myself. Might be worth a look if you&#8217;re starting from scratch though&#8230;<br />
<br />
From what I can gather the good folk behind PHP have decided to tighten up their pass-by-reference handling and creating new objects. I don&#8217;t know the ins and outs of it to be honest. I had several days of listening to Marcus complain about the changes he was having to make to <a href="http://www.simpletest.org">SimpleTest</a> but that&#8217;s about my lot! There&#8217;s a decent explanation on SitePoint though: <a href="http://www.sitepoint.com/blogs/2005/07/30/php-44-minor-gotcha/">PHP 4.4 Minor Gotcha</a>. Hope that helps&#8230;]]></content:encoded>
      <pubDate>Fri, 28 Oct 2005 08:41:01 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #69 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-287</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-287</guid>
      <description><![CDATA[Mike:<br />
<br />
Interesting reading. Thanks for the link.<br />
 &#8211; Thanks!]]></description>
      <content:encoded><![CDATA[Mike:<br />
<br />
Interesting reading. Thanks for the link.<br />
 &#8211; Thanks!]]></content:encoded>
      <pubDate>Fri, 28 Oct 2005 17:36:41 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #70 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-288</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-288</guid>
      <description><![CDATA[> Could you please show the code for the /commented/data.php file.<br />
<br />
Sorry, I&#8217;ve been gone for ages, here&#8217;s the content in data.php: <a href="http://www.chudosok.info/commented/data_php.txt">http://www.chudosok.info/commented/data_php.txt</a>]]></description>
      <content:encoded><![CDATA[> Could you please show the code for the /commented/data.php file.<br />
<br />
Sorry, I&#8217;ve been gone for ages, here&#8217;s the content in data.php: <a href="http://www.chudosok.info/commented/data_php.txt">http://www.chudosok.info/commented/data_php.txt</a>]]></content:encoded>
      <pubDate>Sat, 29 Oct 2005 17:52:16 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #71 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-337</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-337</guid>
      <description><![CDATA[This method works okey for me, but when i try to include something more than a plain text in &#8216;pageholder.class.php&#8217;  gives me problems. <br />
<br />
    I can&#8217;t include into this class complete pages becoming of every directory. Do everybody know how to fix this problem?]]></description>
      <content:encoded><![CDATA[This method works okey for me, but when i try to include something more than a plain text in &#8216;pageholder.class.php&#8217;  gives me problems. <br />
<br />
    I can&#8217;t include into this class complete pages becoming of every directory. Do everybody know how to fix this problem?]]></content:encoded>
      <pubDate>Mon, 21 Nov 2005 11:54:50 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #72 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-347</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-347</guid>
      <description><![CDATA[Thanks for this.  I will have to adapt this to my AJAX app .  At this time I only have one link that allows outside linking.  I don&#8217;t know if I will implement the support for non javascript seeing as without it my app is no good anyway.]]></description>
      <content:encoded><![CDATA[Thanks for this.  I will have to adapt this to my AJAX app .  At this time I only have one link that allows outside linking.  I don&#8217;t know if I will implement the support for non javascript seeing as without it my app is no good anyway.]]></content:encoded>
      <pubDate>Wed, 30 Nov 2005 16:43:57 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #73 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-349</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-349</guid>
      <description><![CDATA[Hi, nice article. I just want you to now there is this really_simple_history_framework that I use and seems to be working pretty cool. http://codinginparadise.org/projects/dhtml_history/README.html<br />
I think the approach is the same as what you do, but you mught find it interesting to check out.<br />
<br />
kind regards.]]></description>
      <content:encoded><![CDATA[Hi, nice article. I just want you to now there is this really_simple_history_framework that I use and seems to be working pretty cool. http://codinginparadise.org/projects/dhtml_history/README.html<br />
I think the approach is the same as what you do, but you mught find it interesting to check out.<br />
<br />
kind regards.]]></content:encoded>
      <pubDate>Fri, 02 Dec 2005 06:52:24 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #74 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-350</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-350</guid>
      <description><![CDATA[The bookmarking system described here works only for javascript-enabled browser. If you follow the #-kind-of-link in the browser without javascript, the result will be weird.<br />
<br />
Is there a way to get access to the hash portion of the url from server? If it&#8217;s possible we could fix the problem&#8230;]]></description>
      <content:encoded><![CDATA[The bookmarking system described here works only for javascript-enabled browser. If you follow the #-kind-of-link in the browser without javascript, the result will be weird.<br />
<br />
Is there a way to get access to the hash portion of the url from server? If it&#8217;s possible we could fix the problem&#8230;]]></content:encoded>
      <pubDate>Mon, 05 Dec 2005 09:38:25 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #75 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-351</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-351</guid>
      <description><![CDATA[Is this method also applicable for DOM scripts eg a toggle which relies on #hash links that  show/hide a div container.The hashlinks which toggle the on/off state are not visible in the actual addressbar either.]]></description>
      <content:encoded><![CDATA[Is this method also applicable for DOM scripts eg a toggle which relies on #hash links that  show/hide a div container.The hashlinks which toggle the on/off state are not visible in the actual addressbar either.]]></content:encoded>
      <pubDate>Mon, 05 Dec 2005 19:19:06 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #76 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-352</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-352</guid>
      <description><![CDATA[I&#8217;m using js link a bit differently<br />
<br />
[a href=&#8221;some.link&#8221; onclick=&#8221;goUrl(&#8216;some.link&#8217;);return false;&#8221;]Some Link[/a]<br />
<br />
In this way there is a fallback/failover suport if js is disabled.<br />
<br />
My problems are <br />
1. back button<br />
2. bookmarking current page<br />
<br />
How do you suggest to address this case ? Do you thing I can adjust your solution to my problem ?<br />
<br />
Thanks,<br />
MC<br />
www.goodstockimages.com<br />
<br />
Ps.<br />
BTW I&#8217;m using AjaxAnywhere  http://ajaxanywhere.sourceforge.net/]]></description>
      <content:encoded><![CDATA[I&#8217;m using js link a bit differently<br />
<br />
[a href=&#8221;some.link&#8221; onclick=&#8221;goUrl(&#8216;some.link&#8217;);return false;&#8221;]Some Link[/a]<br />
<br />
In this way there is a fallback/failover suport if js is disabled.<br />
<br />
My problems are <br />
1. back button<br />
2. bookmarking current page<br />
<br />
How do you suggest to address this case ? Do you thing I can adjust your solution to my problem ?<br />
<br />
Thanks,<br />
MC<br />
www.goodstockimages.com<br />
<br />
Ps.<br />
BTW I&#8217;m using AjaxAnywhere  http://ajaxanywhere.sourceforge.net/]]></content:encoded>
      <pubDate>Wed, 07 Dec 2005 13:21:17 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #77 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-353</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-353</guid>
      <description><![CDATA[wow&#8230; amazing&#8230; I&#8217;ve looking for this and now&#8230; I understand it&#8230; thanks.<br />
<br />
just a brazilian newbie.]]></description>
      <content:encoded><![CDATA[wow&#8230; amazing&#8230; I&#8217;ve looking for this and now&#8230; I understand it&#8230; thanks.<br />
<br />
just a brazilian newbie.]]></content:encoded>
      <pubDate>Sun, 11 Dec 2005 06:33:16 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #78 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-355</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-355</guid>
      <description><![CDATA[@MC<br />
<br />
Just make you js link do &#8220;window.location.href = &#8217;#lalala&#8217;;&#8221;<br />
<br />
So, it will still do the navigating thing.]]></description>
      <content:encoded><![CDATA[@MC<br />
<br />
Just make you js link do &#8220;window.location.href = &#8217;#lalala&#8217;;&#8221;<br />
<br />
So, it will still do the navigating thing.]]></content:encoded>
      <pubDate>Wed, 14 Dec 2005 23:12:47 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #79 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-357</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-357</guid>
      <description><![CDATA[I want to develop a search results page, in which i want to display the results depends on price. I want to use one slider which contains the price range. when the user drag this slider,  i have to display the results in this price range only.]]></description>
      <content:encoded><![CDATA[I want to develop a search results page, in which i want to display the results depends on price. I want to use one slider which contains the price range. when the user drag this slider,  i have to display the results in this price range only.]]></content:encoded>
      <pubDate>Wed, 21 Dec 2005 08:21:55 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #80 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-358</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-358</guid>
      <description><![CDATA[FYI &#8211; There has been a really nice implementation of this approach by a big company.  Yahoo! has done this well with their new <a href="http://maps.yahoo.com/beta/">maps beta</a>.  The maps (using flash) are very dynamic but the url always remains accurate and &#8220;cut and pasteable&#8221; via use of the hash.]]></description>
      <content:encoded><![CDATA[FYI &#8211; There has been a really nice implementation of this approach by a big company.  Yahoo! has done this well with their new <a href="http://maps.yahoo.com/beta/">maps beta</a>.  The maps (using flash) are very dynamic but the url always remains accurate and &#8220;cut and pasteable&#8221; via use of the hash.]]></content:encoded>
      <pubDate>Thu, 22 Dec 2005 17:26:33 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #81 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-361</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-361</guid>
      <description><![CDATA[A bit off topic, but I&#8217;m developing a file manager which has file searches which get posted from a form. I then use window.location.href or window.location.hash to write the search string to the URL. This works fine, except in Safari, where the page goes into a permanent &#8216;Loading&#8217; state. Any ideas?]]></description>
      <content:encoded><![CDATA[A bit off topic, but I&#8217;m developing a file manager which has file searches which get posted from a form. I then use window.location.href or window.location.hash to write the search string to the URL. This works fine, except in Safari, where the page goes into a permanent &#8216;Loading&#8217; state. Any ideas?]]></content:encoded>
      <pubDate>Thu, 29 Dec 2005 03:49:17 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #82 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-362</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-362</guid>
      <description><![CDATA[Man I LOVE YOU !!! Thanks for the this great article !]]></description>
      <content:encoded><![CDATA[Man I LOVE YOU !!! Thanks for the this great article !]]></content:encoded>
      <pubDate>Thu, 29 Dec 2005 08:39:21 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #83 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-367</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-367</guid>
      <description><![CDATA[This solution is right but still not 100% because in IE it doesnt let you change the hash programmaticly . <br />
<br />
check erik.eae.net/playground/hashlistener.zip for the solution]]></description>
      <content:encoded><![CDATA[This solution is right but still not 100% because in IE it doesnt let you change the hash programmaticly . <br />
<br />
check erik.eae.net/playground/hashlistener.zip for the solution]]></content:encoded>
      <pubDate>Mon, 09 Jan 2006 17:06:16 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #84 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-373</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-373</guid>
      <description><![CDATA[Hi,<br />
I&#8217;m the admin of the opensource project &#8220;thephpbible.sourceforge.net&#8221;<br />
thephpbible  allows webdesigners to quickly and easily integrate a simple Bible into their church or organizations web site.<br />
We need someone to add this functionality to our project.<br />
If anyone is interested contact me (bywave AT gmail.com)<br />
<br />
Thanks]]></description>
      <content:encoded><![CDATA[Hi,<br />
I&#8217;m the admin of the opensource project &#8220;thephpbible.sourceforge.net&#8221;<br />
thephpbible  allows webdesigners to quickly and easily integrate a simple Bible into their church or organizations web site.<br />
We need someone to add this functionality to our project.<br />
If anyone is interested contact me (bywave AT gmail.com)<br />
<br />
Thanks]]></content:encoded>
      <pubDate>Mon, 16 Jan 2006 02:57:06 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #85 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-389</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-389</guid>
      <description><![CDATA[hey there tastatureschmutzer<br />
<br />
excellent work. i got yours working on firefox on mac with ease. how do you get it working on a pc running internet explorer. <br />
<br />
great stuff.]]></description>
      <content:encoded><![CDATA[hey there tastatureschmutzer<br />
<br />
excellent work. i got yours working on firefox on mac with ease. how do you get it working on a pc running internet explorer. <br />
<br />
great stuff.]]></content:encoded>
      <pubDate>Fri, 27 Jan 2006 12:08:14 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #86 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-401</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-401</guid>
      <description><![CDATA[Hey mate,<br />
this works great!<br />
I modified it a bit in order to make normal anchors work as well and it worked out perfect.<br />
<br />
I tried it in netscape 7.1 as well just for checking compatibility and unfourtunatley it does NOT work there&#8230;though netscape is mozilla based.  Very strange.<br />
<br />
Maybe u can work this out.<br />
<br />
Cheers, Florian]]></description>
      <content:encoded><![CDATA[Hey mate,<br />
this works great!<br />
I modified it a bit in order to make normal anchors work as well and it worked out perfect.<br />
<br />
I tried it in netscape 7.1 as well just for checking compatibility and unfourtunatley it does NOT work there&#8230;though netscape is mozilla based.  Very strange.<br />
<br />
Maybe u can work this out.<br />
<br />
Cheers, Florian]]></content:encoded>
      <pubDate>Sun, 29 Jan 2006 06:25:02 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #87 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-402</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-402</guid>
      <description><![CDATA[Hi can some1 please help me, I tried to log into an account of mine but this keeps coming up: &#8220;you have been log out of your account as the use of the browser back button is not supported&#8221;. This just suddenly happened and I&#8217;ve no idea how to fix it. Please help!!!!!!!!!!!!]]></description>
      <content:encoded><![CDATA[Hi can some1 please help me, I tried to log into an account of mine but this keeps coming up: &#8220;you have been log out of your account as the use of the browser back button is not supported&#8221;. This just suddenly happened and I&#8217;ve no idea how to fix it. Please help!!!!!!!!!!!!]]></content:encoded>
      <pubDate>Sun, 29 Jan 2006 07:28:51 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #88 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-421</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-421</guid>
      <description><![CDATA[Has anyone got this working with flash yet? we flash guys really need these basic browser functions]]></description>
      <content:encoded><![CDATA[Has anyone got this working with flash yet? we flash guys really need these basic browser functions]]></content:encoded>
      <pubDate>Mon, 06 Feb 2006 17:25:38 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #89 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-422</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-422</guid>
      <description><![CDATA[This has been done with Flash before, but this article is specifically about doing it with the XMLHttpRequest object.]]></description>
      <content:encoded><![CDATA[This has been done with Flash before, but this article is specifically about doing it with the XMLHttpRequest object.]]></content:encoded>
      <pubDate>Mon, 06 Feb 2006 21:24:49 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #90 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-423</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-423</guid>
      <description><![CDATA[It already is possible in Flash &#8211; that&#8217;s where I got the basic technique from! For an example of it in action see the <a href="http://www.holler.co.uk">Holler</a> site&#8230;]]></description>
      <content:encoded><![CDATA[It already is possible in Flash &#8211; that&#8217;s where I got the basic technique from! For an example of it in action see the <a href="http://www.holler.co.uk">Holler</a> site&#8230;]]></content:encoded>
      <pubDate>Tue, 07 Feb 2006 06:47:47 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #91 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-424</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-424</guid>
      <description><![CDATA[The Holler site only seems to address the back button issue in Flash, though, not bookmarking. Robert Penner&#8217;s solution also doesn&#8217;t support bookmarking (unless I&#8217;m missing something). Perhaps it would be worthwhile to change the &#8220;The original bookmark/back button fix, as used by Flash developers for a little while now&#8221; phrase in the article to only mention the back button? Sorry if I&#8217;m wrong about any of this.<br />
<br />
Thanks.]]></description>
      <content:encoded><![CDATA[The Holler site only seems to address the back button issue in Flash, though, not bookmarking. Robert Penner&#8217;s solution also doesn&#8217;t support bookmarking (unless I&#8217;m missing something). Perhaps it would be worthwhile to change the &#8220;The original bookmark/back button fix, as used by Flash developers for a little while now&#8221; phrase in the article to only mention the back button? Sorry if I&#8217;m wrong about any of this.<br />
<br />
Thanks.]]></content:encoded>
      <pubDate>Tue, 07 Feb 2006 18:55:08 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #92 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-426</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-426</guid>
      <description><![CDATA[You might want to have a look at the source of the <a href="http://www.redbulltrackattack.co.uk">track attack</a> website, it&#8217;s a flash site with working back button and the possibility to bookmark a page, and it&#8217;s developed in a similar way to Mike&#8217;s approach.]]></description>
      <content:encoded><![CDATA[You might want to have a look at the source of the <a href="http://www.redbulltrackattack.co.uk">track attack</a> website, it&#8217;s a flash site with working back button and the possibility to bookmark a page, and it&#8217;s developed in a similar way to Mike&#8217;s approach.]]></content:encoded>
      <pubDate>Wed, 08 Feb 2006 05:16:36 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #93 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-428</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-428</guid>
      <description><![CDATA[Thanks very much, Matthias, I really appreciate it.]]></description>
      <content:encoded><![CDATA[Thanks very much, Matthias, I really appreciate it.]]></content:encoded>
      <pubDate>Wed, 08 Feb 2006 12:02:57 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #94 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-437</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-437</guid>
      <description><![CDATA[With a address like http://foo.bar/#foo/bar/ , readability is improved a lot. Compare this with a google map address :-)]]></description>
      <content:encoded><![CDATA[With a address like http://foo.bar/#foo/bar/ , readability is improved a lot. Compare this with a google map address :-)]]></content:encoded>
      <pubDate>Sat, 11 Feb 2006 05:27:34 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #95 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-442</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-442</guid>
      <description><![CDATA[So how do you get this to work without JSpan and PHP, like if you for example use ASP.Net like me??<br />
<br />
What does doGetPage do??<br />
<br />
Why don&#8217;t you update the script with the suggestions, suggested amongst other by Mark?]]></description>
      <content:encoded><![CDATA[So how do you get this to work without JSpan and PHP, like if you for example use ASP.Net like me??<br />
<br />
What does doGetPage do??<br />
<br />
Why don&#8217;t you update the script with the suggestions, suggested amongst other by Mark?]]></content:encoded>
      <pubDate>Wed, 15 Feb 2006 10:44:19 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #96 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-443</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-443</guid>
      <description><![CDATA[Henrik:<br />
<br />
How you hook up your Ajax to your back-end technology isn&#8217;t the point of this article &#8211; that&#8217;s why I used an out-of-the-box solution like JPSpan to deal with that aspect for me. Here I am only concerned with how you trick the browsers into adding to their history and proposing a way to get bookmarking working. This method actually isn&#8217;t limited to Ajax either &#8211; Matthias has got it working for Flash and it would work fine with Eric&#8217;s S5 too.<br />
<br />
doGetPage is the function that gets content from the server side. If you were doing this for yourself that is the function that you would have to change. pageholder is a PHP class on the sever side whose method ashtml returns a string of HTML. It&#8217;s not documented in the article because, as I said before, the transfer method is irrelevant. It&#8217;s all in the zip file though if you want to take a proper look for yourself&#8230;<br />
<br />
I&#8217;ve not updated the script for the same reason I&#8217;ve not written any new articles recently: time! I&#8217;ve just got too much work on to spend much more time on this, which is done completely for free. When I get time I&#8217;ll do some kind of redux but until then I would highly recommend checking out Nobody&#8217;s comments above &#8211; he&#8217;s come up with another method for doing the same thing, based on this one, and Robert Nyman&#8217;s <a href="http://www.robertnyman.com/2006/02/08/ask-ajax-source-kit/">AJAX Source Kit</a>, which looks really good.]]></description>
      <content:encoded><![CDATA[Henrik:<br />
<br />
How you hook up your Ajax to your back-end technology isn&#8217;t the point of this article &#8211; that&#8217;s why I used an out-of-the-box solution like JPSpan to deal with that aspect for me. Here I am only concerned with how you trick the browsers into adding to their history and proposing a way to get bookmarking working. This method actually isn&#8217;t limited to Ajax either &#8211; Matthias has got it working for Flash and it would work fine with Eric&#8217;s S5 too.<br />
<br />
doGetPage is the function that gets content from the server side. If you were doing this for yourself that is the function that you would have to change. pageholder is a PHP class on the sever side whose method ashtml returns a string of HTML. It&#8217;s not documented in the article because, as I said before, the transfer method is irrelevant. It&#8217;s all in the zip file though if you want to take a proper look for yourself&#8230;<br />
<br />
I&#8217;ve not updated the script for the same reason I&#8217;ve not written any new articles recently: time! I&#8217;ve just got too much work on to spend much more time on this, which is done completely for free. When I get time I&#8217;ll do some kind of redux but until then I would highly recommend checking out Nobody&#8217;s comments above &#8211; he&#8217;s come up with another method for doing the same thing, based on this one, and Robert Nyman&#8217;s <a href="http://www.robertnyman.com/2006/02/08/ask-ajax-source-kit/">AJAX Source Kit</a>, which looks really good.]]></content:encoded>
      <pubDate>Wed, 15 Feb 2006 12:22:49 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #97 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-445</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-445</guid>
      <description><![CDATA[i am looking for smaller companies in united kingdom and USA, that are using this web application called AJAX, were do i find these companies]]></description>
      <content:encoded><![CDATA[i am looking for smaller companies in united kingdom and USA, that are using this web application called AJAX, were do i find these companies]]></content:encoded>
      <pubDate>Fri, 17 Feb 2006 00:19:37 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #98 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-448</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-448</guid>
      <description><![CDATA[Hello Mike and thank you for your answer. I definately know what it&#8217;s like not to have time, and I guess in the end it comes down to my own ability to do tricks with javascript, whether I get it to work as I intend to or not.<br />
<br />
I think my basic problem was that I didn&#8217;t really see what type of data that function returned, and it didn&#8217;t say it was a transfer function. Thanks for the explaination.<br />
<br />
I&#8217;ll have a look at &#8220;Nobody&#8221;&#8217;s comments above, and I have already had a look at Robert&#8217;s Ajax implementation &#8211; it look really great, and I&#8217;m sure I&#8217;ll have a look at it when I get through the exams :p.]]></description>
      <content:encoded><![CDATA[Hello Mike and thank you for your answer. I definately know what it&#8217;s like not to have time, and I guess in the end it comes down to my own ability to do tricks with javascript, whether I get it to work as I intend to or not.<br />
<br />
I think my basic problem was that I didn&#8217;t really see what type of data that function returned, and it didn&#8217;t say it was a transfer function. Thanks for the explaination.<br />
<br />
I&#8217;ll have a look at &#8220;Nobody&#8221;&#8217;s comments above, and I have already had a look at Robert&#8217;s Ajax implementation &#8211; it look really great, and I&#8217;m sure I&#8217;ll have a look at it when I get through the exams :p.]]></content:encoded>
      <pubDate>Wed, 22 Feb 2006 03:17:56 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #99 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-463</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-463</guid>
      <description><![CDATA[I am using Brad Neubergs solution for retaining the back-button functionality, and it works very well.<br />
<br />
There is, however, one thing I do not like (but seems to be IE&#8217;s standard behaviour): the selection box on the back- and forward buttons (for freely selecting any visited page instaed of going just back and forth) always show the full page URI (which is usally so long, it is meaningless, as you only see the server address), where I would only like to see the visited pages title.<br />
<br />
And to my great delight, your demo app does just that: it displays the entry &#8220;Dummy Page&#8221; there!<br />
<br />
How did you achieve that????]]></description>
      <content:encoded><![CDATA[I am using Brad Neubergs solution for retaining the back-button functionality, and it works very well.<br />
<br />
There is, however, one thing I do not like (but seems to be IE&#8217;s standard behaviour): the selection box on the back- and forward buttons (for freely selecting any visited page instaed of going just back and forth) always show the full page URI (which is usally so long, it is meaningless, as you only see the server address), where I would only like to see the visited pages title.<br />
<br />
And to my great delight, your demo app does just that: it displays the entry &#8220;Dummy Page&#8221; there!<br />
<br />
How did you achieve that????]]></content:encoded>
      <pubDate>Thu, 02 Mar 2006 06:49:34 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #100 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-464</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-464</guid>
      <description><![CDATA[Great article!<br />
<br />
As far as I understand this, together with at lot of good comments from others, such as &#8220;Nobody&#8221; , may solve my problem. It&#8217;s great that you people are willing to share good ideas with others!<br />
<br />
I may not use your script, but the idea itself was what I needed. <br />
<br />
My users, wich are puples and theachers in Norwegian shools, love the AJAX-solution but miss bookmarking and the buttons. Dealing with that kind of users we really need to take care of this issue. Your solution just gave me hope :)<br />
<br />
My only concern is that this idea triggered me and probably will keep me awake the rest of the night ;)<br />
<br />
Hopefully the browser vendors will give us some solutions, but that may take some time.<br />
<br />
Thank you for taking the time to write the script and the article!<br />
<br />
Winifred: <br />
<br />
I guess the reason why you see long URL&#8217;s in IE&#8217;s selection box  is that you have ben browsing pages whitout a proper title. In my selction boxes I see readable titles when I have been visiting pages with titles&#8230;]]></description>
      <content:encoded><![CDATA[Great article!<br />
<br />
As far as I understand this, together with at lot of good comments from others, such as &#8220;Nobody&#8221; , may solve my problem. It&#8217;s great that you people are willing to share good ideas with others!<br />
<br />
I may not use your script, but the idea itself was what I needed. <br />
<br />
My users, wich are puples and theachers in Norwegian shools, love the AJAX-solution but miss bookmarking and the buttons. Dealing with that kind of users we really need to take care of this issue. Your solution just gave me hope :)<br />
<br />
My only concern is that this idea triggered me and probably will keep me awake the rest of the night ;)<br />
<br />
Hopefully the browser vendors will give us some solutions, but that may take some time.<br />
<br />
Thank you for taking the time to write the script and the article!<br />
<br />
Winifred: <br />
<br />
I guess the reason why you see long URL&#8217;s in IE&#8217;s selection box  is that you have ben browsing pages whitout a proper title. In my selction boxes I see readable titles when I have been visiting pages with titles&#8230;]]></content:encoded>
      <pubDate>Thu, 02 Mar 2006 20:08:09 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #101 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-481</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-481</guid>
      <description><![CDATA[Hey guys!<br />
<br />
First of all, thanks a lot for a really useful article, Mike. It gave me exactly the help I was looking for. I&#8217;ve been implementing your methods in a new website I&#8217;m working on for Persnickety Tim&#8217;s Coffee, but I&#8217;ve got this freakish behaviour going on in IE version 6 on the PC, and I can&#8217;t for the life of me figure it out.<br />
<br />
You can see what I&#8217;m talking about at http://test.ptims.com (just open it with IE). The only AJAX-enabled buttons right now are the Buy Coffee links and the Gift Baskets link. Click around between those pages, maybe use the back button once and then click the buttons a couple more times&#8212;first of all, you&#8217;ll see that the window title changes, while the only thing Javascript is changing is the window.location property (I&#8217;ve also tried window.location.href and window.location.hash). Second and more importantly, IE goes to a blank page and the top left icon (above the File menu) changes as well.<br />
<br />
I&#8217;ve been scratching my head for a week on this one. If I comment out the line that changes window.location (or .hash or .href), things work great&#8212;the back button included. But once I try to change window.location, it freaks out. I&#8217;ve tried changing window.location after the iframe src change, before it, I&#8217;ve even had window.location change a couple seconds before changing the iframe src&#8212;the error keeps coming up.<br />
<br />
I&#8217;m on the verge of foregoing the bookmark functionality, but I thought I&#8217;d see if any of you great minds are up for a challenge. I&#8217;ll be grateful for any help. Thanks!]]></description>
      <content:encoded><![CDATA[Hey guys!<br />
<br />
First of all, thanks a lot for a really useful article, Mike. It gave me exactly the help I was looking for. I&#8217;ve been implementing your methods in a new website I&#8217;m working on for Persnickety Tim&#8217;s Coffee, but I&#8217;ve got this freakish behaviour going on in IE version 6 on the PC, and I can&#8217;t for the life of me figure it out.<br />
<br />
You can see what I&#8217;m talking about at http://test.ptims.com (just open it with IE). The only AJAX-enabled buttons right now are the Buy Coffee links and the Gift Baskets link. Click around between those pages, maybe use the back button once and then click the buttons a couple more times&#8212;first of all, you&#8217;ll see that the window title changes, while the only thing Javascript is changing is the window.location property (I&#8217;ve also tried window.location.href and window.location.hash). Second and more importantly, IE goes to a blank page and the top left icon (above the File menu) changes as well.<br />
<br />
I&#8217;ve been scratching my head for a week on this one. If I comment out the line that changes window.location (or .hash or .href), things work great&#8212;the back button included. But once I try to change window.location, it freaks out. I&#8217;ve tried changing window.location after the iframe src change, before it, I&#8217;ve even had window.location change a couple seconds before changing the iframe src&#8212;the error keeps coming up.<br />
<br />
I&#8217;m on the verge of foregoing the bookmark functionality, but I thought I&#8217;d see if any of you great minds are up for a challenge. I&#8217;ll be grateful for any help. Thanks!]]></content:encoded>
      <pubDate>Sat, 11 Mar 2006 00:27:40 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #102 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-497</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-497</guid>
      <description><![CDATA[Hey folks ..<br />
<br />
i&#8217;ve a problem .. stuck in the deep end with php and can&#8217;t find a life-jacket ;P<br />
<br />
i&#8217;m trying to serve a php page with &#8216;pageholder.class.php&#8217; .. but can seem to locate a suitable cmd to insert the page into the div ..<br />
<br />
i&#8217;ve tryed a  &#8216;echo &#8220;document.mosteverything(myphp.php)&#8221; &#8217; <br />
<br />
but no avail ..<br />
<br />
also thought a &#8216;document.write&#8217; with a &#8216;include_once&#8217; served in php might do .. but alas no ..<br />
<br />
fast trying to learn js an php so any helps would be most appriciated :)<br />
<br />
ta<br />
<br />
bren<br />
<br />
p.s : i&#8217;m sure this is going to be a duh wheres my brain gone but deadlines do strange things to a mans minds ..]]></description>
      <content:encoded><![CDATA[Hey folks ..<br />
<br />
i&#8217;ve a problem .. stuck in the deep end with php and can&#8217;t find a life-jacket ;P<br />
<br />
i&#8217;m trying to serve a php page with &#8216;pageholder.class.php&#8217; .. but can seem to locate a suitable cmd to insert the page into the div ..<br />
<br />
i&#8217;ve tryed a  &#8216;echo &#8220;document.mosteverything(myphp.php)&#8221; &#8217; <br />
<br />
but no avail ..<br />
<br />
also thought a &#8216;document.write&#8217; with a &#8216;include_once&#8217; served in php might do .. but alas no ..<br />
<br />
fast trying to learn js an php so any helps would be most appriciated :)<br />
<br />
ta<br />
<br />
bren<br />
<br />
p.s : i&#8217;m sure this is going to be a duh wheres my brain gone but deadlines do strange things to a mans minds ..]]></content:encoded>
      <pubDate>Thu, 06 Apr 2006 21:49:30 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #103 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-506</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-506</guid>
      <description><![CDATA[Great work, great article, thanks to share all this code!<br />
i&#8217;ll try to learn from it, my website is in need of a liftup :)]]></description>
      <content:encoded><![CDATA[Great work, great article, thanks to share all this code!<br />
i&#8217;ll try to learn from it, my website is in need of a liftup :)]]></content:encoded>
      <pubDate>Sun, 09 Apr 2006 12:48:02 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #104 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-542</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-542</guid>
      <description><![CDATA[Dont make it with JPSpan. I am newbie and I donnot understand!<br />
<br />
Please!!!]]></description>
      <content:encoded><![CDATA[Dont make it with JPSpan. I am newbie and I donnot understand!<br />
<br />
Please!!!]]></content:encoded>
      <pubDate>Tue, 18 Apr 2006 00:00:21 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #105 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-546</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-546</guid>
      <description><![CDATA[David: Sorry if you don&#8217;t understand but this article isn&#8217;t really about Ajax, which is why I used JPSpan &#8211; to take that aspect out of the equation. The point here is the javascript to fix the back button and enable bookmarking.<br />
<br />
There are far better people than me out there writing about implementing your own Ajax apps&#8230;]]></description>
      <content:encoded><![CDATA[David: Sorry if you don&#8217;t understand but this article isn&#8217;t really about Ajax, which is why I used JPSpan &#8211; to take that aspect out of the equation. The point here is the javascript to fix the back button and enable bookmarking.<br />
<br />
There are far better people than me out there writing about implementing your own Ajax apps&#8230;]]></content:encoded>
      <pubDate>Tue, 18 Apr 2006 12:39:21 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #106 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-548</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-548</guid>
      <description><![CDATA[I know I am a little late to this discussion. I have been following it but never commented on it.<br />
<br />
My approach so far has been to use a bootstrap page of some sort (pick your flavor of server side language)<br />
<br />
ALL requests are routed through the bootstrap page using your favorite rewrite engine. (mod rewrite in my case) The page then parses out the path in the address bar and stores the values.<br />
<br />
Each controller knows that if is invoked with params that are passed AFTER a # that the request is &#8220;ajaxy&#8221; and behaves as appropriate. If the url doesn&#8217;t have a hash the backend composes a page and returns it.<br />
<br />
The js on the front simply doesn&#8217;t fire if it isn&#8217;t fully supported. Once it fires it finds all link elements that allow ajax style updates of content (via class, id, rel, rev, hash tables of ajax listeners .. doesn&#8217;t matter ) and replaces their real url with the same exact string preceded by a #.<br />
<br />
Without ajax support the links are real url://domain.com/foo/bar style links. With ajax support they are url://domain/#foo/bar style links.<br />
<br />
It is all proof of concept code so far. But if I get it working more nicely I will of course share.<br />
<br />
Sorry if this is off topic. I started to ramble.]]></description>
      <content:encoded><![CDATA[I know I am a little late to this discussion. I have been following it but never commented on it.<br />
<br />
My approach so far has been to use a bootstrap page of some sort (pick your flavor of server side language)<br />
<br />
ALL requests are routed through the bootstrap page using your favorite rewrite engine. (mod rewrite in my case) The page then parses out the path in the address bar and stores the values.<br />
<br />
Each controller knows that if is invoked with params that are passed AFTER a # that the request is &#8220;ajaxy&#8221; and behaves as appropriate. If the url doesn&#8217;t have a hash the backend composes a page and returns it.<br />
<br />
The js on the front simply doesn&#8217;t fire if it isn&#8217;t fully supported. Once it fires it finds all link elements that allow ajax style updates of content (via class, id, rel, rev, hash tables of ajax listeners .. doesn&#8217;t matter ) and replaces their real url with the same exact string preceded by a #.<br />
<br />
Without ajax support the links are real url://domain.com/foo/bar style links. With ajax support they are url://domain/#foo/bar style links.<br />
<br />
It is all proof of concept code so far. But if I get it working more nicely I will of course share.<br />
<br />
Sorry if this is off topic. I started to ramble.]]></content:encoded>
      <pubDate>Tue, 18 Apr 2006 16:37:40 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #107 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-613</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-613</guid>
      <description><![CDATA[Your demo doesn&#8217;t work in Opera at all (links are unclickable), but it looks nice in Firefox.]]></description>
      <content:encoded><![CDATA[Your demo doesn&#8217;t work in Opera at all (links are unclickable), but it looks nice in Firefox.]]></content:encoded>
      <pubDate>Tue, 02 May 2006 13:10:49 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #108 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-648</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-648</guid>
      <description><![CDATA[I actually read the article and didn&#8217;t find it very helpful, so <strong>I wrote my own back button AJAX fix</strong> with PHP.<br />
<br />
It is available <a href="http://whitemarker.blogspot.com/2006/05/ajax-back-button-fix-with-php-and-html.html">here</a><br />
<br />
It is simpler to use.  Assuming you have PHP setup, you can just pop it onto your webserver and see it work.<br />
<br />
It has a <strong>noframes fix</strong>, so that if someone chooses not to use frames, the site will still work, even if the frames don&#8217;t fix the back button.<br />
<br />
The example I wrote has <strong>code highlighting</strong> so it is easier to read as well.  The main advantage my example is you can just read the code and see how it all works.]]></description>
      <content:encoded><![CDATA[I actually read the article and didn&#8217;t find it very helpful, so <strong>I wrote my own back button AJAX fix</strong> with PHP.<br />
<br />
It is available <a href="http://whitemarker.blogspot.com/2006/05/ajax-back-button-fix-with-php-and-html.html">here</a><br />
<br />
It is simpler to use.  Assuming you have PHP setup, you can just pop it onto your webserver and see it work.<br />
<br />
It has a <strong>noframes fix</strong>, so that if someone chooses not to use frames, the site will still work, even if the frames don&#8217;t fix the back button.<br />
<br />
The example I wrote has <strong>code highlighting</strong> so it is easier to read as well.  The main advantage my example is you can just read the code and see how it all works.]]></content:encoded>
      <pubDate>Thu, 11 May 2006 16:34:14 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #109 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-722</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-722</guid>
      <description><![CDATA[Your demo worked fine in Opera and IE7. Great work, and excellent article. In my opinion the most important browsers :)]]></description>
      <content:encoded><![CDATA[Your demo worked fine in Opera and IE7. Great work, and excellent article. In my opinion the most important browsers :)]]></content:encoded>
      <pubDate>Tue, 30 May 2006 02:11:47 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #110 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-856</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-856</guid>
      <description><![CDATA[hi all<br />
a very good article but can anyone suggest some basic article if we not use php but wish such back and bookmarking facility in iframe<br />
                          Thanks &#38; Regards<br />
                            saurabh]]></description>
      <content:encoded><![CDATA[hi all<br />
a very good article but can anyone suggest some basic article if we not use php but wish such back and bookmarking facility in iframe<br />
                          Thanks &#38; Regards<br />
                            saurabh]]></content:encoded>
      <pubDate>Fri, 09 Jun 2006 02:59:17 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #111 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-876</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-876</guid>
      <description><![CDATA[Great article!  Helped me out tremendously. I used it to create a much simplified version for Flash.<br />
<br />
StoneArch &#8211; Page 1<br />
<br />
    var currentUrl = &#8220;&#8221;;<br />
    var intervalId = 0;<br />
<br />
 // Start the timer and read the initial Url<br />
    function init() {<br />
        currentUrl = window.location.href;<br />
        intervalId = window.setInterval(checkForUrlChanges, 10);<br />
    }<br />
<br />
// Add to the history<br />
function addBookmark(page, title) {<br />
        document.title = title;<br />
        currentUrl = &#8220;mockpage.html?id=&#8221; + page;<br />
        window.frames[&#8220;mockPage&#8221;].location.href = currentUrl;<br />
} <br />
<br />
// Check for changes in the Url, if they occur update the Flash movie<br />
    function checkForUrlChanges() {<br />
        if (currentUrl != window.frames[&#8220;mockPage&#8221;].location.href) {<br />
            currentUrl = window.frames[&#8220;mockPage&#8221;].location.href;<br />
            var items = window.frames[&#8220;mockPage&#8221;].location.search.split(&#8221;=&#8221;);<br />
            thisMovie(&#8220;AnchorTest&#8221;).gotoBookmark(items<sup><a href="#fn1">1</a></sup>);<br />
        }<br />
    }<br />
<br />
// Find the Flash movie                <br />
    function thisMovie(movieName) {<br />
        if (navigator.appName.indexOf(&#8220;Microsoft&#8221;) != -1) {<br />
            return window[movieName]<br />
        }<br />
        else {<br />
            return document[movieName]<br />
        }<br />
    }<br />
<br />
]]></description>
      <content:encoded><![CDATA[Great article!  Helped me out tremendously. I used it to create a much simplified version for Flash.<br />
<br />
StoneArch &#8211; Page 1<br />
<br />
    var currentUrl = &#8220;&#8221;;<br />
    var intervalId = 0;<br />
<br />
 // Start the timer and read the initial Url<br />
    function init() {<br />
        currentUrl = window.location.href;<br />
        intervalId = window.setInterval(checkForUrlChanges, 10);<br />
    }<br />
<br />
// Add to the history<br />
function addBookmark(page, title) {<br />
        document.title = title;<br />
        currentUrl = &#8220;mockpage.html?id=&#8221; + page;<br />
        window.frames[&#8220;mockPage&#8221;].location.href = currentUrl;<br />
} <br />
<br />
// Check for changes in the Url, if they occur update the Flash movie<br />
    function checkForUrlChanges() {<br />
        if (currentUrl != window.frames[&#8220;mockPage&#8221;].location.href) {<br />
            currentUrl = window.frames[&#8220;mockPage&#8221;].location.href;<br />
            var items = window.frames[&#8220;mockPage&#8221;].location.search.split(&#8221;=&#8221;);<br />
            thisMovie(&#8220;AnchorTest&#8221;).gotoBookmark(items<sup><a href="#fn1">1</a></sup>);<br />
        }<br />
    }<br />
<br />
// Find the Flash movie                <br />
    function thisMovie(movieName) {<br />
        if (navigator.appName.indexOf(&#8220;Microsoft&#8221;) != -1) {<br />
            return window[movieName]<br />
        }<br />
        else {<br />
            return document[movieName]<br />
        }<br />
    }<br />
<br />
]]></content:encoded>
      <pubDate>Wed, 14 Jun 2006 15:58:50 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #112 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-877</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-877</guid>
      <description><![CDATA[I&#8217;ve been struggling with the back button issue for over a week now and I&#8217;m not any closer to a solution.  The site I am building is still at it&#8217;s early stages and I haven&#8217;t yet added even support for non-IE browsers.  I do not know anything about PHP and I can&#8217;t tell if I can even implement the solutions discussed here since I already came up with my own bookamrking scheme and I&#8217;m using frames besides.  If anyone has any suggestions, please let me know.  I can post any code that people would want to see or even allow anonymous read access to the folder that contains all of my current source.]]></description>
      <content:encoded><![CDATA[I&#8217;ve been struggling with the back button issue for over a week now and I&#8217;m not any closer to a solution.  The site I am building is still at it&#8217;s early stages and I haven&#8217;t yet added even support for non-IE browsers.  I do not know anything about PHP and I can&#8217;t tell if I can even implement the solutions discussed here since I already came up with my own bookamrking scheme and I&#8217;m using frames besides.  If anyone has any suggestions, please let me know.  I can post any code that people would want to see or even allow anonymous read access to the folder that contains all of my current source.]]></content:encoded>
      <pubDate>Wed, 14 Jun 2006 17:45:28 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #113 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-950</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-950</guid>
      <description><![CDATA[So many comments!  I&#8217;m very pleased to see that you tend to this article and respond to the comments Mike.  Kudos!  Between your solution, and the information you&#8217;ve provided about it, the comments, the answers, and the alternate solutions proposed, including Nobody&#8217;s, I&#8217;m sure I&#8217;ll be able to put together a portable collection with this functionality to fix the apps that I&#8217;ve written.  I&#8217;ve been meaning to consider back buttons and bookmarking, but it wasn&#8217;t until today when my girlfriend pointed out those exact issues with my new photo search that I realized it&#8217;s time to take them seriously!<br />
<br />
I know this isn&#8217;t the place for advertising AJAX apps, but I&#8217;ve gotten into writing them recently, and I&#8217;m pretty excited about my photo search app: www.jcbeck.com/photos/javascript.asp<br />
This is the &#8220;beta&#8221; url, which shall remain here, but I may put this &#8220;live&#8221; at some point either at this url or another.  Thanks for those who stop by!]]></description>
      <content:encoded><![CDATA[So many comments!  I&#8217;m very pleased to see that you tend to this article and respond to the comments Mike.  Kudos!  Between your solution, and the information you&#8217;ve provided about it, the comments, the answers, and the alternate solutions proposed, including Nobody&#8217;s, I&#8217;m sure I&#8217;ll be able to put together a portable collection with this functionality to fix the apps that I&#8217;ve written.  I&#8217;ve been meaning to consider back buttons and bookmarking, but it wasn&#8217;t until today when my girlfriend pointed out those exact issues with my new photo search that I realized it&#8217;s time to take them seriously!<br />
<br />
I know this isn&#8217;t the place for advertising AJAX apps, but I&#8217;ve gotten into writing them recently, and I&#8217;m pretty excited about my photo search app: www.jcbeck.com/photos/javascript.asp<br />
This is the &#8220;beta&#8221; url, which shall remain here, but I may put this &#8220;live&#8221; at some point either at this url or another.  Thanks for those who stop by!]]></content:encoded>
      <pubDate>Wed, 28 Jun 2006 17:04:41 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #114 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1164</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1164</guid>
      <description><![CDATA[I&rsquo;ve been struggling with the back button issue for over a week now and I&rsquo;m not any closer to a solution. The site I am building is still at it&rsquo;s early stages and I haven&rsquo;t yet added even support for non-IE browsers. I do not know anything about PHP and I can&rsquo;t tell if I can even implement the solutions discussed here since I already came up with my own bookamrking scheme and I&rsquo;m using frames besides. If anyone has any suggestions, please let me know. I can post any code that people would want to see or even allow anonymous read access to the folder that contains all of my current source.]]></description>
      <content:encoded><![CDATA[I&rsquo;ve been struggling with the back button issue for over a week now and I&rsquo;m not any closer to a solution. The site I am building is still at it&rsquo;s early stages and I haven&rsquo;t yet added even support for non-IE browsers. I do not know anything about PHP and I can&rsquo;t tell if I can even implement the solutions discussed here since I already came up with my own bookamrking scheme and I&rsquo;m using frames besides. If anyone has any suggestions, please let me know. I can post any code that people would want to see or even allow anonymous read access to the folder that contains all of my current source.]]></content:encoded>
      <pubDate>Thu, 27 Jul 2006 09:59:32 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #115 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1198</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1198</guid>
      <description><![CDATA[Sweet! I was just looking for something like this&#8212;came here via google. That&#8217;s pretty sweet, man. I can&#8217;t wait to adapt it for my stupid project&#8230;]]></description>
      <content:encoded><![CDATA[Sweet! I was just looking for something like this&#8212;came here via google. That&#8217;s pretty sweet, man. I can&#8217;t wait to adapt it for my stupid project&#8230;]]></content:encoded>
      <pubDate>Tue, 01 Aug 2006 21:32:37 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #116 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1212</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1212</guid>
      <description><![CDATA[>I say eval() is a necessary evil since Javascript >has almost no support for reflection. (No way to >dynamically call functions, dynamically assign >variables, etc.)<br />
<br />
Wow&#8230; <br />
<br />
x? y() : z();<br />
x = y || z;<br />
x();<br />
<br />
x = a? y : z;<br />
x = x || y;<br />
if(x) var y = z; else var y = b;<br />
<br />
I thought that was all quite easy.]]></description>
      <content:encoded><![CDATA[>I say eval() is a necessary evil since Javascript >has almost no support for reflection. (No way to >dynamically call functions, dynamically assign >variables, etc.)<br />
<br />
Wow&#8230; <br />
<br />
x? y() : z();<br />
x = y || z;<br />
x();<br />
<br />
x = a? y : z;<br />
x = x || y;<br />
if(x) var y = z; else var y = b;<br />
<br />
I thought that was all quite easy.]]></content:encoded>
      <pubDate>Fri, 04 Aug 2006 16:47:48 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #117 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1390</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1390</guid>
      <description><![CDATA[Hi Nobody,<br />
<br />
First and foremost, thank you for the script, people like you are life savers for people like me. But i need your help.<br />
<br />
I have setup your pages on my server, but it seems the back button doesn&#8217;t work proplery. Can you please guide me.<br />
[link] http://www.webhostingfx.com/gtek/newajaxnav/test.htm<br />
<br />
This is what happens:<br />
When i click the back button it goes to<br />
http://www.webhostingfx.com/21/#home<br />
<br />
How can i change this?<br />
<br />
Thanks a lot<br />
desperado]]></description>
      <content:encoded><![CDATA[Hi Nobody,<br />
<br />
First and foremost, thank you for the script, people like you are life savers for people like me. But i need your help.<br />
<br />
I have setup your pages on my server, but it seems the back button doesn&#8217;t work proplery. Can you please guide me.<br />
[link] http://www.webhostingfx.com/gtek/newajaxnav/test.htm<br />
<br />
This is what happens:<br />
When i click the back button it goes to<br />
http://www.webhostingfx.com/21/#home<br />
<br />
How can i change this?<br />
<br />
Thanks a lot<br />
desperado]]></content:encoded>
      <pubDate>Sun, 13 Aug 2006 22:04:04 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #118 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1391</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1391</guid>
      <description><![CDATA[Hi Nobody,<br />
<br />
i think i just figured it out.<br />
<br />
It&#8217;s in ie.js, the function chkHrf()<br />
<br />
i changed  window.location.href = &#8221;/21/#&#8221; + nhrf; to<br />
window.location.href = &#8221;./test.htm/#&#8221; + nhrf;<br />
<br />
Let me know if i am on the right path, coz that works just fine. Thought i should put it in here so that others can use it as well&#8230;<br />
<br />
Please let me know if i have to make any changes anywhere else. For a working demo, have a look at <br />
http://www.webhostingfx.com/gtek/newajaxnav/test.htm<br />
<br />
Cheers,]]></description>
      <content:encoded><![CDATA[Hi Nobody,<br />
<br />
i think i just figured it out.<br />
<br />
It&#8217;s in ie.js, the function chkHrf()<br />
<br />
i changed  window.location.href = &#8221;/21/#&#8221; + nhrf; to<br />
window.location.href = &#8221;./test.htm/#&#8221; + nhrf;<br />
<br />
Let me know if i am on the right path, coz that works just fine. Thought i should put it in here so that others can use it as well&#8230;<br />
<br />
Please let me know if i have to make any changes anywhere else. For a working demo, have a look at <br />
http://www.webhostingfx.com/gtek/newajaxnav/test.htm<br />
<br />
Cheers,]]></content:encoded>
      <pubDate>Sun, 13 Aug 2006 22:41:13 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #119 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1525</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1525</guid>
      <description><![CDATA[Hello,<br />
<br />
FYI:<br />
<br />
The <a href="http://donotremove.co.uk/extra/ajax-nav/index.html">demo</a> provided does not work on IE6 WinXP SP2 (IE 6.0.2900.2180.xpsp_sp2_gdr.050301-1519)<br />
<br />
but <a href="http://www.chudosok.info/">this</a> one provided by nobody does.]]></description>
      <content:encoded><![CDATA[Hello,<br />
<br />
FYI:<br />
<br />
The <a href="http://donotremove.co.uk/extra/ajax-nav/index.html">demo</a> provided does not work on IE6 WinXP SP2 (IE 6.0.2900.2180.xpsp_sp2_gdr.050301-1519)<br />
<br />
but <a href="http://www.chudosok.info/">this</a> one provided by nobody does.]]></content:encoded>
      <pubDate>Tue, 29 Aug 2006 10:06:05 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #120 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1526</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1526</guid>
      <description><![CDATA[It works fine for me in IE6/XPsp2&#8230;]]></description>
      <content:encoded><![CDATA[It works fine for me in IE6/XPsp2&#8230;]]></content:encoded>
      <pubDate>Tue, 29 Aug 2006 10:23:04 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #121 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1546</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1546</guid>
      <description><![CDATA[Hi,<br />
<br />
Has anyone noticed that using the rshf in IE you see a loading bar in the status bar when navigating the o&#8217;reilly mail example (<br />
http://shrinkster.com/i51 ). This seems to go against the ajax concept of not seeing any page refresh/loading?<br />
<br />
Any thoughts appreciated.<br />
<br />
Thanks<br />
Kieran]]></description>
      <content:encoded><![CDATA[Hi,<br />
<br />
Has anyone noticed that using the rshf in IE you see a loading bar in the status bar when navigating the o&#8217;reilly mail example (<br />
http://shrinkster.com/i51 ). This seems to go against the ajax concept of not seeing any page refresh/loading?<br />
<br />
Any thoughts appreciated.<br />
<br />
Thanks<br />
Kieran]]></content:encoded>
      <pubDate>Sun, 10 Sep 2006 14:33:54 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #122 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1548</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1548</guid>
      <description><![CDATA[Hi, I have been following this article and responses for a few months. Although I feel that the solution you present is nothing short of brilliant, I have some reservations regarding Google and SEO. Will Google uniquely crawl and add to its banks urls of the type generated here? i.e. does Google see url#bob and url#mary as two unique links with unique content? Any comments would be highly appreciated.]]></description>
      <content:encoded><![CDATA[Hi, I have been following this article and responses for a few months. Although I feel that the solution you present is nothing short of brilliant, I have some reservations regarding Google and SEO. Will Google uniquely crawl and add to its banks urls of the type generated here? i.e. does Google see url#bob and url#mary as two unique links with unique content? Any comments would be highly appreciated.]]></content:encoded>
      <pubDate>Wed, 13 Sep 2006 11:23:17 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #123 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1549</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1549</guid>
      <description><![CDATA[Peter: This approach is unobtrusive so your links should all be in the standard server-side form with normal querystrings &#8211; something like /yourpage.php?id=4. At runtime the DOM script then runs through and hijacks them, turning them into /yourpage.php#id=4. Google will see the ? ones while the user interacts with the # versions. Does that make sense?]]></description>
      <content:encoded><![CDATA[Peter: This approach is unobtrusive so your links should all be in the standard server-side form with normal querystrings &#8211; something like /yourpage.php?id=4. At runtime the DOM script then runs through and hijacks them, turning them into /yourpage.php#id=4. Google will see the ? ones while the user interacts with the # versions. Does that make sense?]]></content:encoded>
      <pubDate>Wed, 13 Sep 2006 11:34:21 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #124 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1551</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1551</guid>
      <description><![CDATA[Hi Mike &#8211; don&#8217;t post this &#8211; just responding to your response re SEO and Google: I feel like a righteous ass &#8211; my brain bypassed that section of the article completely. How weird&#8230; I&#8217;m a bit freaked out ;-) Anyway, you make total sense. Thanks again for a truly brilliant solution. I&#8217;ll send you a link to my site once it&#8217;s done so you can see another implementation in action. Best wishes. Peter.]]></description>
      <content:encoded><![CDATA[Hi Mike &#8211; don&#8217;t post this &#8211; just responding to your response re SEO and Google: I feel like a righteous ass &#8211; my brain bypassed that section of the article completely. How weird&#8230; I&#8217;m a bit freaked out ;-) Anyway, you make total sense. Thanks again for a truly brilliant solution. I&#8217;ll send you a link to my site once it&#8217;s done so you can see another implementation in action. Best wishes. Peter.]]></content:encoded>
      <pubDate>Thu, 14 Sep 2006 09:19:02 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #125 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1588</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1588</guid>
      <description><![CDATA[The demo works fine in Firefox 1.0, but try this in Firefox 1.5 (PC or Mac):<br />
<br />
1) Open the demo<br />
2) Click on page 2<br />
3) Open any page outside of the demo (e.g. Google)<br />
4) Click the back button<br />
<br />
The hash should say #2 and page 2, but instead it&#8217;s page 1 and no hash. It actually goes back to the hash value (or lack thereof) when the page was first opened. If you try this test by going to page 3 directly first (with #3) in step 1, at step 4 it&#8217;ll be page 3 again.<br />
<br />
It appears to only be a &#8220;cosmetic&#8221; bug; the value in location.hash is wrong, but if you click reload or go back then forward again, the right page/hash shows up. My theory is that this is caused by the page being still in the session history / fastback cache (new with 1.5), but I haven&#8217;t turned it off to test it completely. (If after step 3 you visit more than 8 pages then go back to the demo in step 4, which should flush the demo out of the cache, the right page/hash appears).<br />
<br />
Has anyone seen the same behaviour before? Any workaround or information (even a bugilla report)?]]></description>
      <content:encoded><![CDATA[The demo works fine in Firefox 1.0, but try this in Firefox 1.5 (PC or Mac):<br />
<br />
1) Open the demo<br />
2) Click on page 2<br />
3) Open any page outside of the demo (e.g. Google)<br />
4) Click the back button<br />
<br />
The hash should say #2 and page 2, but instead it&#8217;s page 1 and no hash. It actually goes back to the hash value (or lack thereof) when the page was first opened. If you try this test by going to page 3 directly first (with #3) in step 1, at step 4 it&#8217;ll be page 3 again.<br />
<br />
It appears to only be a &#8220;cosmetic&#8221; bug; the value in location.hash is wrong, but if you click reload or go back then forward again, the right page/hash shows up. My theory is that this is caused by the page being still in the session history / fastback cache (new with 1.5), but I haven&#8217;t turned it off to test it completely. (If after step 3 you visit more than 8 pages then go back to the demo in step 4, which should flush the demo out of the cache, the right page/hash appears).<br />
<br />
Has anyone seen the same behaviour before? Any workaround or information (even a bugilla report)?]]></content:encoded>
      <pubDate>Wed, 04 Oct 2006 05:42:56 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #126 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1595</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1595</guid>
      <description><![CDATA[Hello,<br />
your abstract is really good and above all very easy to understand (even for me with only litte js-knowledge).<br />
<br />
My aim is it to add the following way of opening the adress: index.php#hash=site1 instead of the id: index.php#hash=1<br />
This is particularly important for me (administrating the side, therefore i do not need to know all the numbers).<br />
Do you have an idea, how to implement this very easy?  <br />
<br />
Today, i&#8217;ve prepared the pageholding.class to load the sites out of a mysql-db. It&#8217;s so easy now to adminstrate my site :). Thank you!!!]]></description>
      <content:encoded><![CDATA[Hello,<br />
your abstract is really good and above all very easy to understand (even for me with only litte js-knowledge).<br />
<br />
My aim is it to add the following way of opening the adress: index.php#hash=site1 instead of the id: index.php#hash=1<br />
This is particularly important for me (administrating the side, therefore i do not need to know all the numbers).<br />
Do you have an idea, how to implement this very easy?  <br />
<br />
Today, i&#8217;ve prepared the pageholding.class to load the sites out of a mysql-db. It&#8217;s so easy now to adminstrate my site :). Thank you!!!]]></content:encoded>
      <pubDate>Tue, 10 Oct 2006 14:09:02 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #127 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1602</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1602</guid>
      <description><![CDATA[This works in Safari 2]]></description>
      <content:encoded><![CDATA[This works in Safari 2]]></content:encoded>
      <pubDate>Fri, 13 Oct 2006 10:25:09 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #128 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1692</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1692</guid>
      <description><![CDATA[:)<br />
this article is really commented!!!!<br />
very nice&#8230;.<br />
the example, the comments, the community&#8230;.<br />
the point is&#8230;<br />
i wonder<br />
can browser applications written in ajax and some server side script replace the standalone applications made in vb or c#<br />
thanx]]></description>
      <content:encoded><![CDATA[:)<br />
this article is really commented!!!!<br />
very nice&#8230;.<br />
the example, the comments, the community&#8230;.<br />
the point is&#8230;<br />
i wonder<br />
can browser applications written in ajax and some server side script replace the standalone applications made in vb or c#<br />
thanx]]></content:encoded>
      <pubDate>Mon, 30 Oct 2006 08:57:02 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #129 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1715</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1715</guid>
      <description><![CDATA[I think both Mike&#8217;s and my solution needs a rewrite. Both seem to be incompatible with the latest Firefox and Opera.]]></description>
      <content:encoded><![CDATA[I think both Mike&#8217;s and my solution needs a rewrite. Both seem to be incompatible with the latest Firefox and Opera.]]></content:encoded>
      <pubDate>Thu, 09 Nov 2006 19:31:48 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #130 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1728</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1728</guid>
      <description><![CDATA[Regarding Safari, bookmarking does work, the back button doesn&#8217;t. The back button is fixed in the Safari nightly builds, so the fix will show up in a future version of Safari.]]></description>
      <content:encoded><![CDATA[Regarding Safari, bookmarking does work, the back button doesn&#8217;t. The back button is fixed in the Safari nightly builds, so the fix will show up in a future version of Safari.]]></content:encoded>
      <pubDate>Mon, 13 Nov 2006 16:30:02 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #131 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1741</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1741</guid>
      <description><![CDATA[As people have noted already, the example doesn&#8217;t work at all in Opera (v9.02/Win for me). Can&#8217;t open the three pages and the back button is seriously broken.<br />
<br />
@Matthias Willerich &#8211; Opera added XmlHttpRequest in v8.0 (http://www.opera.com/docs/changelogs/windows/800/) so yes it&#8217;s now in the major release. Initial support wasn&#8217;t perfect but seems far more robust in 9.]]></description>
      <content:encoded><![CDATA[As people have noted already, the example doesn&#8217;t work at all in Opera (v9.02/Win for me). Can&#8217;t open the three pages and the back button is seriously broken.<br />
<br />
@Matthias Willerich &#8211; Opera added XmlHttpRequest in v8.0 (http://www.opera.com/docs/changelogs/windows/800/) so yes it&#8217;s now in the major release. Initial support wasn&#8217;t perfect but seems far more robust in 9.]]></content:encoded>
      <pubDate>Tue, 14 Nov 2006 23:04:51 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #132 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1861</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1861</guid>
      <description><![CDATA[Nice code, i will try to implement in my website. But your demo page does not work at all in Opera.]]></description>
      <content:encoded><![CDATA[Nice code, i will try to implement in my website. But your demo page does not work at all in Opera.]]></content:encoded>
      <pubDate>Sun, 17 Dec 2006 04:47:07 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #133 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1862</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1862</guid>
      <description><![CDATA[Here&#8217;s the fix for Opera.<br />
<br />
http://www.quirksmode.org/bugreports/archives/2004/11/load_and_unload.html<br />
(comment 15)<br />
http://bloomd.home.mchsi.com/opera-onload.html<br />
<br />
Tested in Opera 9.]]></description>
      <content:encoded><![CDATA[Here&#8217;s the fix for Opera.<br />
<br />
http://www.quirksmode.org/bugreports/archives/2004/11/load_and_unload.html<br />
(comment 15)<br />
http://bloomd.home.mchsi.com/opera-onload.html<br />
<br />
Tested in Opera 9.]]></content:encoded>
      <pubDate>Tue, 19 Dec 2006 18:01:23 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #134 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1863</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1863</guid>
      <description><![CDATA[Did anyone notice that IE DOES in fact create a new history entry if the # part of the URL is changed to an anchor tag that actually exists?  One solution to the IE problem (as opposed to the hidden IFRAME) is to have a container div that you inject an anchor tag into just before changing location.hash.  Here&#8217;s an example:<br />
<br />
&lt;script><br />
  function handleClick() {<br />
    var newAnchor;<br />
    // Do some Ajax type thing that sets newAnchor.<br />
<br />
    $(&#8216;container&#8217;).innerHTML = &#8220;&#8221;;<br />
    location.hash = newAnchor;<br />
  }<br />
&lt;/script><br />
<br />
&lt;div id=&#8221;container&#8221;>&lt;/div><br />
<br />
&lt;a href=&#8221;#&#8221; onclick=&#8221;handleClick(); return false;&#8221; />]]></description>
      <content:encoded><![CDATA[Did anyone notice that IE DOES in fact create a new history entry if the # part of the URL is changed to an anchor tag that actually exists?  One solution to the IE problem (as opposed to the hidden IFRAME) is to have a container div that you inject an anchor tag into just before changing location.hash.  Here&#8217;s an example:<br />
<br />
&lt;script><br />
  function handleClick() {<br />
    var newAnchor;<br />
    // Do some Ajax type thing that sets newAnchor.<br />
<br />
    $(&#8216;container&#8217;).innerHTML = &#8220;&#8221;;<br />
    location.hash = newAnchor;<br />
  }<br />
&lt;/script><br />
<br />
&lt;div id=&#8221;container&#8221;>&lt;/div><br />
<br />
&lt;a href=&#8221;#&#8221; onclick=&#8221;handleClick(); return false;&#8221; />]]></content:encoded>
      <pubDate>Wed, 20 Dec 2006 14:30:16 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #135 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1880</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1880</guid>
      <description><![CDATA[@Ben:<br />
<br />
I noticed that too. I used it to my favour by setting the value of &#8220;document.documentElement.id&#8221; to whatever my URL fragment was going to be in the same same function as the one that changes window.location &#8211; that way there is no need to create any extra markup to handle this in IE. For example:<br />
<br />
function UpdateAddressBar(address) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;document.documentElement.id = address;<br />
&nbsp;&nbsp;&nbsp;&nbsp;window.location.href = &#8221;#&#8221; + address<br />
}<br />
<br />
Is what I used to get around this issue, where &#8216;address&#8217; is the URL fragment identified in another part of my script.]]></description>
      <content:encoded><![CDATA[@Ben:<br />
<br />
I noticed that too. I used it to my favour by setting the value of &#8220;document.documentElement.id&#8221; to whatever my URL fragment was going to be in the same same function as the one that changes window.location &#8211; that way there is no need to create any extra markup to handle this in IE. For example:<br />
<br />
function UpdateAddressBar(address) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;document.documentElement.id = address;<br />
&nbsp;&nbsp;&nbsp;&nbsp;window.location.href = &#8221;#&#8221; + address<br />
}<br />
<br />
Is what I used to get around this issue, where &#8216;address&#8217; is the URL fragment identified in another part of my script.]]></content:encoded>
      <pubDate>Tue, 09 Jan 2007 09:04:58 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #136 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1968</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1968</guid>
      <description><![CDATA[I fixed my script, and even though it is still a lottle bit messy, it works in all the latest versions (IE 6 and 7, FFx 2, O 9) of the current browsers. http://chudosok.info]]></description>
      <content:encoded><![CDATA[I fixed my script, and even though it is still a lottle bit messy, it works in all the latest versions (IE 6 and 7, FFx 2, O 9) of the current browsers. http://chudosok.info]]></content:encoded>
      <pubDate>Mon, 12 Feb 2007 19:44:36 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #137 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1973</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1973</guid>
      <description><![CDATA[This is all well and good but because search engine crawlers don&#8217;t execute JavaScript they will never see the correct page accessed with a # url. So this approach is not SEO friendly.]]></description>
      <content:encoded><![CDATA[This is all well and good but because search engine crawlers don&#8217;t execute JavaScript they will never see the correct page accessed with a # url. So this approach is not SEO friendly.]]></content:encoded>
      <pubDate>Mon, 19 Feb 2007 00:39:22 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #138 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1976</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1976</guid>
      <description><![CDATA[@Matt: Look in the source. There aren&#8217;t any href=&#8221;#&#8221; attributes &#8211; all the links work without JS. That&#8217;s the point.]]></description>
      <content:encoded><![CDATA[@Matt: Look in the source. There aren&#8217;t any href=&#8221;#&#8221; attributes &#8211; all the links work without JS. That&#8217;s the point.]]></content:encoded>
      <pubDate>Mon, 19 Feb 2007 06:26:33 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #139 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1979</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1979</guid>
      <description><![CDATA[This is really more of a experiment/proof-of-concept kind of thing. I believe that neither Mike nor me meant this to be used as a main means of navigation for a serious website (this one doesn&#8217;t use it, for example). We basically reinvented the wheel with Javascript here, that&#8217;s all. We proved it can be done.]]></description>
      <content:encoded><![CDATA[This is really more of a experiment/proof-of-concept kind of thing. I believe that neither Mike nor me meant this to be used as a main means of navigation for a serious website (this one doesn&#8217;t use it, for example). We basically reinvented the wheel with Javascript here, that&#8217;s all. We proved it can be done.]]></content:encoded>
      <pubDate>Wed, 21 Feb 2007 03:09:29 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #140 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1980</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1980</guid>
      <description><![CDATA[ak, sorry, forgot to address my previous comment to Matt. A little crarification as well: the site navigation thing is the experiment/proof-of-concept. The actual code and technology utulized here is useful for AJAX apps that don&#8217;t need a search engine or anything but that would need to save the state of an app in the back/forward buffers and into bookmarks, such as Google Maps.]]></description>
      <content:encoded><![CDATA[ak, sorry, forgot to address my previous comment to Matt. A little crarification as well: the site navigation thing is the experiment/proof-of-concept. The actual code and technology utulized here is useful for AJAX apps that don&#8217;t need a search engine or anything but that would need to save the state of an app in the back/forward buffers and into bookmarks, such as Google Maps.]]></content:encoded>
      <pubDate>Wed, 21 Feb 2007 03:20:47 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #141 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1985</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-1985</guid>
      <description><![CDATA[@Nobody: I think Matt&#8217;s missed that the script works unobtrusively so there actually aren&#8217;t any href=&#8221;#&#8221; in the HTML&#8230; Still, I agree with you as well &#8211; it&#8217;s probably not a good idea to use Ajax as the primary means of navigation!]]></description>
      <content:encoded><![CDATA[@Nobody: I think Matt&#8217;s missed that the script works unobtrusively so there actually aren&#8217;t any href=&#8221;#&#8221; in the HTML&#8230; Still, I agree with you as well &#8211; it&#8217;s probably not a good idea to use Ajax as the primary means of navigation!]]></content:encoded>
      <pubDate>Thu, 22 Feb 2007 12:49:40 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #142 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2015</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2015</guid>
      <description><![CDATA[Recently implemented a solution that was originally based on Brad Neuberg&#8217;s code but now has the advantages of having been cleaned up a bit and, best of all, no longer requires a separate iframe.  This means that IE will not hit the webserver with a request every time the back button is clicked.  The code can be found here:<br />
http://cvs.horde.org/dimp/js/src/dhtmlHistory.js<br />
<br />
Usage is as simple as (in an onload function):<br />
if (dhtmlHistory.initialize()) {<br />
    dhtmlHistory.addListener([insert function here]);<br />
}<br />
<br />
Code does require Prototype 1.5.1+.]]></description>
      <content:encoded><![CDATA[Recently implemented a solution that was originally based on Brad Neuberg&#8217;s code but now has the advantages of having been cleaned up a bit and, best of all, no longer requires a separate iframe.  This means that IE will not hit the webserver with a request every time the back button is clicked.  The code can be found here:<br />
http://cvs.horde.org/dimp/js/src/dhtmlHistory.js<br />
<br />
Usage is as simple as (in an onload function):<br />
if (dhtmlHistory.initialize()) {<br />
    dhtmlHistory.addListener([insert function here]);<br />
}<br />
<br />
Code does require Prototype 1.5.1+.]]></content:encoded>
      <pubDate>Tue, 20 Mar 2007 02:31:48 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #143 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2024</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2024</guid>
      <description><![CDATA[Michael,<br />
I&#8217;ve had a brief look at it, and it looks like a very nice and clean implementation, and well documented, too!<br />
<br />
From what I could see, the solution is mainly (only?) for Firefox and IE. I wonder if and when someone finds the time to do a nicely coded solution that contains the Safari solution as well.<br />
Then again, the one that I was told of, was based on a bug, so that might be fixed with the next release and &#8220;break&#8221; the back button&#8230;<br />
Is there a test case for this anywhere online?]]></description>
      <content:encoded><![CDATA[Michael,<br />
I&#8217;ve had a brief look at it, and it looks like a very nice and clean implementation, and well documented, too!<br />
<br />
From what I could see, the solution is mainly (only?) for Firefox and IE. I wonder if and when someone finds the time to do a nicely coded solution that contains the Safari solution as well.<br />
Then again, the one that I was told of, was based on a bug, so that might be fixed with the next release and &#8220;break&#8221; the back button&#8230;<br />
Is there a test case for this anywhere online?]]></content:encoded>
      <pubDate>Tue, 27 Mar 2007 17:09:35 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #144 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2093</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2093</guid>
      <description><![CDATA[Ok, I understand the usage but why??? If you are creating a TRUE &#8220;Internet application&#8221;, open the damn thing into a modal-style window with no nav buttons.  <br />
<br />
You are not enhancing the user&#8217;s experience by using AJAX instead of an IFRAME.  You are just creating more work for yourself. <br />
<br />
I use AJAX for internet applications.  Constructed correctly, an Internet Application does not need all of this unnecessary JavaScript and hidden frame garbage.  Everyone thinks that the BACK button is an AJAX hindrance; it is not.  A website that uses AJAX to load content into a DIV container is just plain foolish and a waste of time.  Don&#8217;t use AJAX because it is &#8220;cool and nifty&#8221;, use it only when it is the BETTER alternative.  <br />
<br />
Use AJAX to run API style calls and &#8220;change&#8221; the layout of the page dynamically, not import HTML.<br />
<br />
To each their own I guess.]]></description>
      <content:encoded><![CDATA[Ok, I understand the usage but why??? If you are creating a TRUE &#8220;Internet application&#8221;, open the damn thing into a modal-style window with no nav buttons.  <br />
<br />
You are not enhancing the user&#8217;s experience by using AJAX instead of an IFRAME.  You are just creating more work for yourself. <br />
<br />
I use AJAX for internet applications.  Constructed correctly, an Internet Application does not need all of this unnecessary JavaScript and hidden frame garbage.  Everyone thinks that the BACK button is an AJAX hindrance; it is not.  A website that uses AJAX to load content into a DIV container is just plain foolish and a waste of time.  Don&#8217;t use AJAX because it is &#8220;cool and nifty&#8221;, use it only when it is the BETTER alternative.  <br />
<br />
Use AJAX to run API style calls and &#8220;change&#8221; the layout of the page dynamically, not import HTML.<br />
<br />
To each their own I guess.]]></content:encoded>
      <pubDate>Wed, 27 Jun 2007 14:58:23 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #145 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2199</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2199</guid>
      <description><![CDATA[Great links, thanks. You&#8217;ve set this article up very well. Harry Fuecks&#8217;s stuff is excellent and well recommended (JPSpan.)<br />
<br />
I&#8217;ve also been having some trouble with IE7 on this, but managed to get a work around. Great Ajax functionality, much appreciated.<br />
<br />
Lastly, eval does have some uses, even if it is evil!<br />
<br />
Thanks again]]></description>
      <content:encoded><![CDATA[Great links, thanks. You&#8217;ve set this article up very well. Harry Fuecks&#8217;s stuff is excellent and well recommended (JPSpan.)<br />
<br />
I&#8217;ve also been having some trouble with IE7 on this, but managed to get a work around. Great Ajax functionality, much appreciated.<br />
<br />
Lastly, eval does have some uses, even if it is evil!<br />
<br />
Thanks again]]></content:encoded>
      <pubDate>Sun, 29 Jul 2007 11:26:04 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #146 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2206</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2206</guid>
      <description><![CDATA[Hello,<br />
<br />
I am using a browser with a built in back button, it&#8217;s free and pretty decent. The name is Firefox, Google it. <br />
<br />
Seriously, the back button doesn&#8217;t need fixing, it&#8217;s not broken. The websites you mention need to be fixed. Each website that decides to implement &#8216;custom&#8217; navigation is so arrogant in presuming that users will not miss the back button behavior that they have to provide that themselves. Otherwise, their funky navigation is just broken.<br />
<br />
To the websites that decide to break the back button: Try a usability test, almost all users know and use the back button, it&#8217;s big and it&#8217;s the first one on the row. Where do you go off breaking such a fundamental part of the User Experience?<br />
<br />
End of rant ]]></description>
      <content:encoded><![CDATA[Hello,<br />
<br />
I am using a browser with a built in back button, it&#8217;s free and pretty decent. The name is Firefox, Google it. <br />
<br />
Seriously, the back button doesn&#8217;t need fixing, it&#8217;s not broken. The websites you mention need to be fixed. Each website that decides to implement &#8216;custom&#8217; navigation is so arrogant in presuming that users will not miss the back button behavior that they have to provide that themselves. Otherwise, their funky navigation is just broken.<br />
<br />
To the websites that decide to break the back button: Try a usability test, almost all users know and use the back button, it&#8217;s big and it&#8217;s the first one on the row. Where do you go off breaking such a fundamental part of the User Experience?<br />
<br />
End of rant ]]></content:encoded>
      <pubDate>Mon, 30 Jul 2007 10:23:59 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #147 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2278</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2278</guid>
      <description><![CDATA[Is there a way to do this without all the extra files and stuff? Is there just a javascript function that adds what page you loaded to the history or something?<br />
<br />
I&#8217;m working on a forum, but I can&#8217;t have this many extra scripts lying around.]]></description>
      <content:encoded><![CDATA[Is there a way to do this without all the extra files and stuff? Is there just a javascript function that adds what page you loaded to the history or something?<br />
<br />
I&#8217;m working on a forum, but I can&#8217;t have this many extra scripts lying around.]]></content:encoded>
      <pubDate>Thu, 16 Aug 2007 12:36:07 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #148 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2305</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2305</guid>
      <description><![CDATA[Maybe browser manufacturers should fix the back button to make it work with our Ajax scripts, instead of us fixing our Ajax scripts to work with the browsers&#8230; ? It would make life a lot easier!<br />
<br />
This article is great! Thanks for putting your time and effort into fixing the back button, so we didn&#8217;t need to use our brains as much! ;)]]></description>
      <content:encoded><![CDATA[Maybe browser manufacturers should fix the back button to make it work with our Ajax scripts, instead of us fixing our Ajax scripts to work with the browsers&#8230; ? It would make life a lot easier!<br />
<br />
This article is great! Thanks for putting your time and effort into fixing the back button, so we didn&#8217;t need to use our brains as much! ;)]]></content:encoded>
      <pubDate>Fri, 24 Aug 2007 16:12:53 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #149 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2352</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2352</guid>
      <description><![CDATA[Have anyone tried unFocus?]]></description>
      <content:encoded><![CDATA[Have anyone tried unFocus?]]></content:encoded>
      <pubDate>Wed, 24 Oct 2007 03:28:03 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #150 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2363</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2363</guid>
      <description><![CDATA[Thanks very much, Matthias, I really appreciate it&#8230;]]></description>
      <content:encoded><![CDATA[Thanks very much, Matthias, I really appreciate it&#8230;]]></content:encoded>
      <pubDate>Sun, 28 Oct 2007 22:10:28 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #151 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2403</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2403</guid>
      <description><![CDATA[There is an article located here<br />
<br />
http://www.codeproject.com/KB/ajax/Salajax.aspx<br />
<br />
that uses a lot of the techniques outlined in this article but simplifies them by providing a class to do all the hard work, the library is extremely easy to use and seems to work very well.]]></description>
      <content:encoded><![CDATA[There is an article located here<br />
<br />
http://www.codeproject.com/KB/ajax/Salajax.aspx<br />
<br />
that uses a lot of the techniques outlined in this article but simplifies them by providing a class to do all the hard work, the library is extremely easy to use and seems to work very well.]]></content:encoded>
      <pubDate>Mon, 03 Dec 2007 23:02:11 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #152 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2421</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2421</guid>
      <description><![CDATA[Maybe browser manufacturers should fix the back button to make it work with our Ajax scripts, instead of us fixing our Ajax scripts to work with the browsers&hellip; ? It would make life a lot easier!]]></description>
      <content:encoded><![CDATA[Maybe browser manufacturers should fix the back button to make it work with our Ajax scripts, instead of us fixing our Ajax scripts to work with the browsers&hellip; ? It would make life a lot easier!]]></content:encoded>
      <pubDate>Wed, 19 Dec 2007 16:33:54 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #153 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2422</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2422</guid>
      <description><![CDATA[Is there a way to do this without all the extra files and stuff? Is there just a javascript function that adds what page you loaded to the history or something?]]></description>
      <content:encoded><![CDATA[Is there a way to do this without all the extra files and stuff? Is there just a javascript function that adds what page you loaded to the history or something?]]></content:encoded>
      <pubDate>Wed, 19 Dec 2007 16:34:22 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #154 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2436</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2436</guid>
      <description><![CDATA[sharp, see the &#8216;salajax&#8217; article mentioned above, it has a javascript library that is easy to use and handles the back button etc.]]></description>
      <content:encoded><![CDATA[sharp, see the &#8216;salajax&#8217; article mentioned above, it has a javascript library that is easy to use and handles the back button etc.]]></content:encoded>
      <pubDate>Thu, 27 Dec 2007 22:00:27 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #155 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2454</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2454</guid>
      <description><![CDATA[You really just want to put the ajax requests on a stack and pop of the last request when the backbutton event is fired.  What is wrong with that ??]]></description>
      <content:encoded><![CDATA[You really just want to put the ajax requests on a stack and pop of the last request when the backbutton event is fired.  What is wrong with that ??]]></content:encoded>
      <pubDate>Mon, 07 Jan 2008 23:05:30 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #156 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2455</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2455</guid>
      <description><![CDATA[@agent_orange: This article was about detecting a back button event, since the browsers don&#8217;t expose one to Javascript. What you do with that information once you have it is up to you&#8230;]]></description>
      <content:encoded><![CDATA[@agent_orange: This article was about detecting a back button event, since the browsers don&#8217;t expose one to Javascript. What you do with that information once you have it is up to you&#8230;]]></content:encoded>
      <pubDate>Tue, 08 Jan 2008 10:49:27 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #157 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2472</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2472</guid>
      <description><![CDATA[Nice code, i will try to implement in my website. But your demo page does not work at all in Opera..]]></description>
      <content:encoded><![CDATA[Nice code, i will try to implement in my website. But your demo page does not work at all in Opera..]]></content:encoded>
      <pubDate>Wed, 16 Jan 2008 04:06:23 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #158 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2478</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-2478</guid>
      <description><![CDATA[Is it at all possible to get this sort of functionality for Opera and Safari? Thanks for the gr8 article Mike?]]></description>
      <content:encoded><![CDATA[Is it at all possible to get this sort of functionality for Opera and Safari? Thanks for the gr8 article Mike?]]></content:encoded>
      <pubDate>Thu, 17 Jan 2008 17:41:26 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #159 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-3668</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-3668</guid>
      <description><![CDATA[You&#8217;re right &#8211; click then back must be one of the most fundamental things about the internet and if that can&#8217;t work then everything else (even if it can) will just not be looked at in the same light. It&#8217;s a fundamentally fundamental. You really can&#8217;t expect to go ahead and design without ensuring something so utterly basic is taken care of.]]></description>
      <content:encoded><![CDATA[You&#8217;re right &#8211; click then back must be one of the most fundamental things about the internet and if that can&#8217;t work then everything else (even if it can) will just not be looked at in the same light. It&#8217;s a fundamentally fundamental. You really can&#8217;t expect to go ahead and design without ensuring something so utterly basic is taken care of.]]></content:encoded>
      <pubDate>Tue, 29 Jul 2008 15:15:59 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #160 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-3753</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-3753</guid>
      <description><![CDATA[Your demo page is broken]]></description>
      <content:encoded><![CDATA[Your demo page is broken]]></content:encoded>
      <pubDate>Wed, 27 Aug 2008 06:13:59 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #161 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-4078</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-4078</guid>
      <description><![CDATA[I had problems with this.  I constructed a BETTER SOLUTION with a WORKING DEMO.  Click on my name to see the solution.]]></description>
      <content:encoded><![CDATA[I had problems with this.  I constructed a BETTER SOLUTION with a WORKING DEMO.  Click on my name to see the solution.]]></content:encoded>
      <pubDate>Thu, 02 Oct 2008 14:48:39 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #162 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-4403</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-4403</guid>
      <description><![CDATA[<p>Hello there. Going through things after the relaunch, and seen that the demo was broken, due to a bug in JPSPAN. I fixed this and uploaded a new version. Please refer to the bug description on the JPSPAN sourceforge page.  Also, if you folks out there are utilizing the YUI framework (which I'm a big fan of), then it's worth looking into the <a href="http://developer.yahoo.com/yui/history/">Browser History Manager</a>, which should do the same thing for you ...</p>]]></description>
      <content:encoded><![CDATA[<p>Hello there. Going through things after the relaunch, and seen that the demo was broken, due to a bug in JPSPAN. I fixed this and uploaded a new version. Please refer to the bug description on the JPSPAN sourceforge page.  Also, if you folks out there are utilizing the YUI framework (which I'm a big fan of), then it's worth looking into the <a href="http://developer.yahoo.com/yui/history/">Browser History Manager</a>, which should do the same thing for you ...</p>]]></content:encoded>
      <pubDate>Wed, 29 Oct 2008 10:37:03 -0400</pubDate>
    </item>
    <item>
      <title><![CDATA[Content with Style - Comment #163 on Fixing the Back Button and Enabling Bookmarking for AJAX Apps]]></title>
      <link>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-4771</link>
      <guid>http://www.contentwithstyle.co.uk/content/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps/#comment-4771</guid>
      <description><![CDATA[Excelent article, quite usefull.

Isn't it easier though to simple have the loaded iframe execute a script to update it's parent hash? Then you only have to poll the hash, which you're doing in <strong>normal</strong> (non-microsoft) browsers anyway.

You still have to make sure you don't do the same in IE and other browsers but it saves some code.

So your iframe calls this script from the body (or head for that matter). Assuming you use #var=val#var2=val2 syntax for the hash.
<code>
if (parent)
{
  var query			 = window.location.search;
  var hash			 = query.replace(/[?&amp;;]/gi, "#");
  parent.location.hash		 = hash;
}
</code>

Then you only have to plug the iframe in IE and the rest works the same as always. No need for polling the iframes location or a function in the iframe.
]]></description>
      <content:encoded><![CDATA[Excelent article, quite usefull.

Isn't it easier though to simple have the loaded iframe execute a script to update it's parent hash? Then you only have to poll the hash, which you're doing in <strong>normal</strong> (non-microsoft) browsers anyway.

You still have to make sure you don't do the same in IE and other browsers but it saves some code.

So your iframe calls this script from the body (or head for that matter). Assuming you use #var=val#var2=val2 syntax for the hash.
<code>
if (parent)
{
  var query			 = window.location.search;
  var hash			 = query.replace(/[?&amp;;]/gi, "#");
  parent.location.hash		 = hash;
}
</code>

Then you only have to plug the iframe in IE and the rest works the same as always. No need for polling the iframes location or a function in the iframe.
]]></content:encoded>
      <pubDate>Sun, 14 Dec 2008 16:44:30 -0500</pubDate>
    </item>
  </channel>
</rss>
