<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>mizzy.org: ajax&#12391;&#12300;&#25147;&#12427;&#12301;&#12300;&#36914;&#12416;&#12301;&#65288;feedbringer&#12434;remixin' #7&#65289;</title>
    <link>http://blog.mizzy.org/articles/2005/11/23/feedbringerRemixing07</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description></description>
    <item>
      <title>ajax&#12391;&#12300;&#25147;&#12427;&#12301;&#12300;&#36914;&#12416;&#12301;&#65288;feedbringer&#12434;remixin' #7&#65289;</title>
      <description>&lt;p class="entryBody"&gt;
feedbringer &#20351;&#12358;&#12398;&#12420;&#12417;&#12383;&#12289;&#12392;&#12363;&#35328;&#12387;&#12390;&#12362;&#12365;&#12394;&#12364;&#12425;&#12289;feedbringer remix &#12493;&#12479;&#12290;&#21029;&#12395; feedbringer &#12376;&#12419;&#12394;&#12367;&#12390;&#12418;&#33391;&#12363;&#12387;&#12383;&#12398;&#12391;&#12377;&#12364;&#12289; &lt;a href="http://www.onjava.com/pub/a/onjava/2005/10/26/ajax-handling-bookmarks-and-back-button.html" target="_blank"&gt;ONJava.com: AJAX: How to Handle Bookmarks and Back Buttons&lt;/a&gt; &#12434;&#35211;&#12390;&#12383;&#12425;&#23455;&#39443;&#12375;&#12383;&#12367;&#12394;&#12387;&#12383;&#12398;&#12392;&#12289;&#12381;&#12358;&#12356;&#12420; feedbringer &#20351;&#12358;&#12398;&#12420;&#12417;&#12383;&#29702;&#30001;&#12398;&#12402;&#12392;&#12388;&#12399;&#12289;&#12300;&#25147;&#12427;&#12301;&#12300;&#36914;&#12416;&#12301;&#12508;&#12479;&#12531;&#12364;&#20351;&#12360;&#12394;&#12356;&#12363;&#12425;&#12384;&#12387;&#12383;&#12394;&#12353;&#12289;&#12392;&#12356;&#12358;&#12371;&#12392;&#12434;&#24605;&#12356;&#20986;&#12375;&#12383;&#12398;&#12391;&#12289;&#19978;&#35352; URL &#12395;&#12354;&#12427;&#12486;&#12463;&#12491;&#12483;&#12463;&#12434; feedbringer &#12395;&#36969;&#29992;&#12375;&#12390;&#12415;&#12427;&#12371;&#12392;&#12395;&#12375;&#12383;&#12290;
&lt;/p&gt;

&lt;p class="entryBody"&gt;
&#12356;&#12388;&#12418;&#12398;&#12372;&#12392;&#12367;&#12289;greasemonkey &#12391; remix &#12391;&#12377;&#12290; &lt;a href="http://mizzy.org/js/feedbringer_enable_back_and_forth.user.js" target="_blank"&gt;feedbringer_enable_back_and_forth.user.js&lt;/a&gt;
&lt;/p&gt;

&lt;p class="entryBody"&gt;
&#23455;&#39443;&#12392;&#12356;&#12358;&#12371;&#12392;&#12418;&#12354;&#12426;&#12289;&#33258;&#20998;&#12398;&#12473;&#12461;&#12523;&#19981;&#36275;&#12418;&#12354;&#12387;&#12390;&#12363;&#12394;&#12426;&#12356;&#12356;&#12363;&#12370;&#12435;&#12394;&#12473;&#12463;&#12522;&#12503;&#12488;&#12391;&#12377;&#12364;&#12289;&#31777;&#21336;&#12395;&#35299;&#35500;&#12434;&#12290;
&lt;/p&gt;

&lt;pre class="code"&gt;
&lt;strong&gt;// feedbringer_enable_back_and_forth.user.js &#12363;&#12425;&#25244;&#31883;&lt;/strong&gt;

var js = document.createElement("script");
js.language = "javascript";
js.src = "http://mizzy.org/js/dhtmlHistory.js";
document.body.appendChild(js);
&lt;/pre&gt;

&lt;p class="entryBody"&gt;
&#12414;&#12378;&#12371;&#12398;&#37096;&#20998;&#12391;&#12399;&#12289;&#19978;&#35352; ONJava.com &#12469;&#12452;&#12488;&#12391;&#32057;&#20171;&#12373;&#12428;&#12390;&#12356;&#12427;&#12289; &lt;a href="http://codinginparadise.org/projects/dhtml_history/latest.zip" target="_blank"&gt;Really Simply History framework&lt;/a&gt; &#12398;dhtmlHistory.js &#12434;&#35501;&#12415;&#36796;&#12435;&#12391;&#12356;&#12414;&#12377;&#12290;
&lt;/p&gt;

&lt;pre class="code"&gt;
&lt;strong&gt;// dhtmlHistory.js &#12363;&#12425;&#25244;&#31883;&lt;/strong&gt;

dhtmlHistory.initialize();
dhtmlHistory.addListener(historyChange);

function historyChange(newLocation, historyData) {
    $('main').innerHTML = historyData;
}
&lt;/pre&gt;

&lt;p class="entryBody"&gt;
dhtmlHistory.js &#12398;&#26368;&#24460;&#12395;&#12289;&#19978;&#12398;6&#34892;&#12434;&#36861;&#21152;&#12375;&#12390;&#12356;&#12414;&#12377;&#12290;&#26412;&#26469;&#12391;&#12354;&#12428;&#12400;&#12518;&#12540;&#12470;&#12473;&#12463;&#12522;&#12503;&#12488;&#20596;&#12395;&#26360;&#12367;&#12409;&#12365;&#12394;&#12435;&#12391;&#12375;&#12423;&#12358;&#12364;&#12289;dhtmlHistory.js &#12434;&#35501;&#12415;&#36796;&#12415;&#32066;&#12431;&#12387;&#12390;&#12363;&#12425;&#23455;&#34892;&#12375;&#12394;&#12356;&#12456;&#12521;&#12540;&#12392;&#12394;&#12427;&#12383;&#12417;&#12289;&#38754;&#20498;&#12394;&#12398;&#12391;&#12371;&#12387;&#12385;&#12395;&#26360;&#12356;&#12385;&#12419;&#12356;&#12414;&#12375;&#12383;&#12290;&#35501;&#12415;&#36796;&#12415;&#23436;&#20102;&#12375;&#12390;&#12363;&#12425;&#23455;&#34892;&#12377;&#12427;&#26041;&#27861;&#12364;&#12424;&#12367;&#12431;&#12363;&#12425;&#12435;&#12375;&#12290;
&lt;/p&gt;

&lt;p class="entryBody"&gt;
&#12371;&#12371;&#12399; dhtmlHistorty &#12458;&#12502;&#12472;&#12455;&#12463;&#12488;&#12398;&#21021;&#26399;&#21270;&#20966;&#29702;&#12391;&#12377;&#12397;&#12290; dhtmlHisotry.addListener &#12364;&#37325;&#35201;&#12394;&#12392;&#12371;&#12391;&#12289;&#12300;&#25147;&#12427;&#12301;&#12300;&#36914;&#12416;&#12301;&#12508;&#12479;&#12531;&#12434;&#25276;&#12375;&#12383;&#26178;&#12395;&#12289;&#12393;&#12358;&#12356;&#12387;&#12383;&#20966;&#29702;&#12434;&#23455;&#34892;&#12377;&#12427;&#12398;&#12363;&#23450;&#32681;&#12375;&#12414;&#12377;&#12290;&#12371;&#12371;&#12391;&#12420;&#12387;&#12390;&#12356;&#12427;&#12371;&#12392;&#12399;&#12289;&#24460;&#12411;&#12393;&#20986;&#12390;&#12367;&#12427; dhtmlHistory.add &#12395;&#12424;&#12387;&#12390;&#35352;&#37682;&#12373;&#12428;&#12383; historyData &#12434;&#12289; id &#12364; main &#12391;&#12354;&#12427;&#12467;&#12531;&#12486;&#12490;&#12395;&#26360;&#12365;&#25147;&#12377;&#12289;&#12392;&#12356;&#12358;&#12371;&#12392;&#12434;&#12420;&#12387;&#12390;&#12356;&#12414;&#12377;&#12290;
&lt;/p&gt;

&lt;pre class="code"&gt;
&lt;strong&gt;// feedbringer_enable_back_and_forth.user.js &#12363;&#12425;&#25244;&#31883;&lt;/strong&gt;

Ajax.Updater.prototype.extend(Ajax.Request.prototype).extend({
  ...
  updateContent: function() {
     ...
     if (receiver) {
       if (this.options.insertion) {
         new this.options.insertion(receiver, response);
       } else {
         receiver.innerHTML = response;
         &lt;strong&gt;
         var date = new Date();
         dhtmlHistory.add('key' + date.getTime() , response);
         &lt;/strong&gt;
       }
     }
  ...
&lt;/pre&gt;

&lt;p class="entryBody"&gt;
&#12518;&#12540;&#12470;&#12473;&#12463;&#12522;&#12503;&#12488;&#12391; prototype.js &#12398; Ajax.Updater &#12434;&#19978;&#26360;&#12365;&#12375;&#12390;&#12356;&#12414;&#12377;&#12290;&#22826;&#23383;&#12398;&#37096;&#20998;&#12434;&#36861;&#21152;&#12375;&#12383;&#12384;&#12369;&#12391;&#12377;&#12397;&#12290;xhtmlHttpRequest &#12398;&#12525;&#12540;&#12489;&#12364;&#23436;&#20102;&#12375;&#12383;&#26178;&#28857;&#12391;&#12289;dhtmlHistory.add &#12434;&#23455;&#34892;&#12375;&#12390;&#12289; location.hash &#12398;&#20516;&#12392;&#12289;&#12381;&#12428;&#12395;&#12402;&#12418;&#12389;&#12367;&#12487;&#12540;&#12479;&#12434; historyStorage &#12458;&#12502;&#12472;&#12455;&#12463;&#12488;&#12395;&#26684;&#32013;&#12289;&#12391;&#12418;&#12387;&#12390; location.hash &#12434;&#12371;&#12371;&#12391;&#25351;&#23450;&#12373;&#12428;&#12383;&#20516;&#12395;&#26360;&#12365;&#25563;&#12360;&#12427;&#12289;&#12392;&#12356;&#12358;&#12371;&#12392;&#12434;&#12420;&#12387;&#12390;&#12414;&#12377;&#12290;
&lt;/p&gt;

&lt;p class="entryBody"&gt;
&#12473;&#12463;&#12522;&#12503;&#12488;&#12398;&#35299;&#35500;&#12399;&#20197;&#19978;&#12391;&#12377;&#12290;&#12371;&#12428;&#12391;&#12300;&#25147;&#12427;&#12301;&#12300;&#36914;&#12416;&#12301;&#12508;&#12479;&#12531;&#12434;&#25276;&#12377;&#12392;&#12289;&#26368;&#21021;&#12398;&#26041;&#12395;&#20986;&#12390;&#12365;&#12383; dhtmlHistory.addListener &#12391;&#25351;&#23450;&#12373;&#12428;&#12383; historyChange &#12364;&#23455;&#34892;&#12373;&#12428;&#12390;&#12289;&#22793;&#26356;&#12373;&#12428;&#12383; location.hash &#12395;&#12402;&#12418;&#12389;&#12367; historyData &#12434; historyStorage &#12458;&#12502;&#12472;&#12455;&#12463;&#12488;&#12363;&#12425;&#24341;&#12387;&#24373;&#12426;&#20986;&#12375;&#12390;&#12289;id &#12364; main &#12391;&#12354;&#12427;&#12467;&#12531;&#12486;&#12490;&#12395;&#26360;&#12365;&#25147;&#12377;&#12289;&#12392;&#12356;&#12358;&#20855;&#21512;&#12395;&#12394;&#12426;&#12414;&#12377;&#12290;
&lt;/p&gt;

&lt;p class="entryBody"&gt;
&#20170;&#22238;&#12398;&#20363;&#12391;&#12399; id=main &#12467;&#12531;&#12486;&#12490;&#27770;&#12417;&#12358;&#12385;&#12391;&#26360;&#12365;&#25563;&#12360;&#12375;&#12390;&#12414;&#12377;&#12364;&#12289; dhtmlHistory.add &#12391;&#26684;&#32013;&#12391;&#12365;&#12427; historyData &#12399;&#12289; &#25991;&#23383;&#21015;&#12384;&#12369;&#12376;&#12419;&#12394;&#12367;&#12458;&#12502;&#12472;&#12455;&#12463;&#12488;&#12418;&#25351;&#23450;&#12391;&#12365;&#12427;&#12398;&#12391;&#12289; &#12420;&#12429;&#12358;&#12392;&#24605;&#12360;&#12400;&#12418;&#12387;&#12392;&#35079;&#38609;&#12394;&#12371;&#12392;&#12418;&#12391;&#12365;&#12414;&#12377;&#12397;&#12290;
&lt;/p&gt;

&lt;p class="entryBody"&gt;
&#19978;&#35352; ONJava.com &#12469;&#12452;&#12488;&#12395;&#12424;&#12427;&#12392;&#12289;&lt;a href="http://www.backbase.com/" target="_blank"&gt;Backbase&lt;/a&gt; &#12420; &lt;a href="http://www.dojotoolkit.org/" target="_blank"&gt;Dojo&lt;/a&gt; &#12394;&#12435;&#12363;&#12399;&#12289;&#12371;&#12358;&#12356;&#12387;&#12383;&#12498;&#12473;&#12488;&#12522;&#12501;&#12524;&#12540;&#12512;&#12527;&#12540;&#12463;&#12364;&#23455;&#35013;&#12373;&#12428;&#12390;&#12356;&#12427;&#12424;&#12358;&#12391;&#12377;&#12290;prototype.js &#12395;&#12418;&#23455;&#35013;&#12375;&#12390;&#12411;&#12375;&#12356;&#12387;&#12377;&#12397;&#12290;
&lt;/p&gt;

</description>
      <pubDate>Wed, 23 Nov 2005 18:28:50 +0900</pubDate>
      <guid isPermaLink="false">urn:uuid:752ECFFC-FB43-11DB-B19E-9689BF6E4193</guid>
      <author>Gosuke Miyashita</author>
      <link>http://blog.mizzy.org/articles/2005/11/23/feedbringerRemixing07</link>
      <category>web</category>
      <trackback:ping>http://blog.mizzy.org/articles/trackback/330</trackback:ping>
    </item>
  </channel>
</rss>
