タグ

safariとWindowに関するedo_m18のブックマーク (2)

  • ブラウザの戻るでJavaScriptの効果が残っている時の対処法|web bibo

    JavaScriptで効果を与えたとき、別ページに飛んだあとブラウザの戻るボタンで、その効果が残っている時の対処法です。 例えば、画像にマウスオーバー処理を与えます。その画像をクリックし、別ページに飛んだあとブラウザの戻るボタンで戻るとマウスオーバー時の画像がそのまま残ってしまいます(Firefox、Safariのみ。IEは大丈夫。)これをどうやって解決するかというと window.onunloadを使ってキャッシュを無効に 上記の様な現象が起こるのはブラウザのキャッシュのせいで、これを無効にすればいいのです。 FirefoxやSafariはonunloadイベントがあるとキャッシュしないみたいなので window.onunload=function(){} と書けばOK。 試してみたい方はこのコードを使ってみてください。 <body onload="alert('test');"> と書

  • script要素のdefer属性の実装 - Thousand Years

    <!--HTMLでは--><script defer></script> <!--XHTMLでは--><script defer="defer"></script> script要素にはdefer属性があって、これはdocument.write系がないことを条件にscriptの中身を後で評価することによってページのレンダリングを妨げないようにするものと説明されている。ただdeferが利用されているサイトってなかなか見たこと無いうえに当にレンダリングを妨げないか興味があったので調べた。 実装されているブラウザ 調べた範囲ではIE(SafariとKon〜は調べてない)のみ。あとIEはscript要素にdefer属性をつけるとinnerHTMLに代入したscriptが実行されるという仕様がある。 // 以下は動かないので駄目 hoge.innerHTML = "hoge<script>aler

    script要素のdefer属性の実装 - Thousand Years
    edo_m18
    edo_m18 2010/05/12
    IEの実装上の性質、deferが指定されたスクリプトはDOMの解析直後、画像等の読み込み前に動く、を利用しているようです。( http://dean.edwards.name/weblog/2005/09/busted/ )
  • 1