推 LaPass:推這個 我也想知道.... 02/13 21:33
這個問題純屬研究性質:
為何某些網頁在另存新檔之後
離線的檔案無法簡單的正常使用 (非flash物件等外掛因素)
ex: 像是 Google Doodle 有時會出現的動態互動式 logo
若假想目標物為一段文字
我試著使用 javascript 讀入 xml 動態生成
但是另存成網頁後,檢視原始檔發現該段文字直接被置換進網頁中
舉例來說,若 html 原始檔如下
<script>
xml=new XMLHttpRequest(); // 若IE用 new ActiveXObject("Microsoft.XMLHTTP");
xml.open("GET","text.xml",false);
xml.send();
xyz=xml.responseXML.getElementsByTagName('txt')[0].firstChild.nodeValue;
document.getElementById('aaa').appendChild(document.createTextNode(xyz));
</script>
<div id=aaa></div>
--------------------------------
另外的XML檔案 text.xml 內容如下
<xmldoc>
<txt>abcdefg</txt>
</xmldoc>
存檔後 html 居然變成
<div id=aaa>abcdefg</div>
這下子不用讀入 xml 也無關緊要了
本以為另存網頁後,原始碼不會變,則因為 text.xml 是 JS 所引入
沒有被下載存檔,便導致離線網頁不能正常使用
但那似乎是 IE4、5 甚至更久以前的事情了
所以究竟是怎麼樣的機制,會讓另存的網頁無法使用本來只有「線上」才會顯示的文字
PS: 假設瀏覽器是 IE8, Firefox 3, GC (或以上版本)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.229.5.160