Hatena::Groupmoz-addon

Ci.nsIZIGOROu

2008-09-29

saveHistory behavior

| 11:51 |  saveHistory behavior - Ci.nsIZIGOROu を含むブックマーク はてなブックマーク -  saveHistory behavior - Ci.nsIZIGOROu

これは何か

ページごとに存在する persist data を取り扱う behavior のよう。但し、historyで戻る、あるいは進んだ場合にのみ発動するみたい。

サンプル

<!DOCTYPE html>
<html>
  <head>
    <title>saveHistory Test</title>
    <meta name="save" content="history" />
    <style type="text/css">
.historyData {
  behavior: url("#default#saveHistory");
} 
    </style>
  </head>
  <body>
    <div class="historyData"></div>
    <script type="text/javascript">
var data = null;
var historyData = document.getElementsByTagName("div")[0];
historyData.attachEvent("load", function(evt) {
  data = this.getAttribute("pdata");
});
historyData.attachEvent("save", function(evt) {
  this.setAttribute("pdata", ++data);
});
    </script>
  </body>
</html>

のようにして、data という変数alertしてみれば挙動が分かると思う。

ちなみにこの historyData とつけた変数への setAttribute, getAttribute は saveHistory behavior に対する onsave, onload イベントの時の参照先が persist data であって、そのイベントハンドラ内で実行した場合とそうでない場合で、得られるデータないしは保存先が異なる。

どういった場合に使えるか

ブラウザの戻る、進むボタン押した時を検出するとかに使える。

ただ、今自分がやりたい事に対しては全然使えないんだなぁ。

shogo4405shogo44052008/09/29 22:50HTCのDefaultBehaviorを利用すると色々なできますよね^^
DefaultBehaviorのまとめエントリーあると面白いかも。

ZIGOROuZIGOROu2008/10/01 16:16色々出来そうなのは確かなんですけどねー。
他のPersistent系は余り使い道無いかも。。。

MSDNのサンプルコードをIEで開く事が出来るんで、まぁそこ見れば十分だと思いますw

BeckyBecky2011/12/30 17:44Thanks for helping me to see tnhigs in a different light.

dhccgsydhccgsy2012/01/01 01:275DpWXA , [url=http://pzofmctcwmii.com/]pzofmctcwmii[/url], [link=http://gfqljepffslj.com/]gfqljepffslj[/link], http://dqivzaqoccgf.com/

lheqowriapdlheqowriapd2012/01/01 23:09rc4hzw <a href="http://bdxscblnypoa.com/">bdxscblnypoa</a>