看板 Web_Design 關於我們 聯絡資訊
我覺得 innerHTML 你就用吧, 不管標不標準 重點是在於大家用不用 大家都用的東西遲早會被群眾暴力變成標準 真要取代 innerHTML 的話, 就要用 createElement, appendChild, insertBefore, removeChild getElementById, getElementsByTagName 等等的函式 舉個例子, 現在想產生一個連結 那就用這段程式碼 : var link = document.createElement("a"); link.href = "http://0rz.net/9d1iv"; link.appendChild(document.createTextNode("[捏他阿魯]死亡筆記本大結局!")); document.body.insertBefore(link, document.body.childNodes[0]); 這樣一個連到 http://0rz.net/9d1iv , 文字是 "[捏他阿魯]死亡筆記本大結局!" 的連結就會被加到網頁最前面了. 如果用 innerHTML 的話就會是這樣 document.body.innerHTML = "<a href='0rz.net/9d1iv'>" + "[捏他阿魯]死亡筆記本大結局!</a>" + document.body.innerHTML; ※ 引述《ileadu (用過的都說「棒」!)》之銘言: : 我看書上說, innerHTML 不符合 DOM : 那 javascript 有什麼其他的做法可以取代 innerHTML 嗎? : 搞了半天 >"< : 我是想替換 HTML 標籤內的內容 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.30.52 ※ 編輯: TKirby 來自: 140.112.30.52 (04/29 18:09)
ileadu:你這方法我也用了,但還是只有在IE下有效果。 04/29 18:29
ileadu:ps. 我沒說清楚,其實我是用在onload 裡面,但好像有規定, 04/29 18:30
ileadu:onload 裡面不能放innerHTML,雖然我已換用你給的這種作法 04/29 18:30
ileadu:但是 Mozilla Firefox and Opera 都不吃~ 04/29 18:31
ileadu:我再自己多嘗試好了,謝謝先 04/29 18:32
ileadu:Firefox不吃,但Web developer也沒提示說javascript有錯 04/29 18:48
ileadu:我說的不吃是指,在瀏覽器上看不到效果…就是沒反應的意思 04/29 18:49
franklai:我在Firefox 1.5.0.2, Opera 8.54試都ok耶 04/29 18:56
franklai:板上搜尋「不想用innerHTML」,推文有個連結 04/29 18:57
franklai:應該能解決你的問題 04/29 18:58
chengong:請問一下insertBefore是何用意? 04/29 21:28
ileadu:...我搞錯了! 已用你說的方法 innerHTML解決…謝謝 04/29 23:04