safari で ブラウザの更新、ヒストリーバックのあと
iframeをjavascriptから更新しようとしても更新されない現象でハマったのでメモ
以下のサイトで同様な現象の報告を発見したので参考にさせていただきました。
Safari caching my iframes!
safariは、srcでなくframeのidをベースでキャッシュされる
考え方で対応すればよいみたいです。
なので、iframeのidを毎回変更します。
var PagePath = new Array();
PagePath[0] = 'html/list.html';
PagePath[1] = 'html/news.html';
var frame_id = new Date().getTime();
div.innerHTML = '<div id="iframe_outer" class="a"><iframe id="a'+ frame_id + '" name="a'+ frame_id + '" src="' + PagePath[selected_number] + '" height="500" width="670" frameborder="0"></iframe></div>';
div.injectInside(document.body);

コメント