Re: [問題] [javascript] 如何在innerhtml後 還能뀠…
※ 引述《SearchNow ( )》之銘言:
[蘇姍]
defer 不是用來延遲顯示的嗎? o_oa" 我不知道還可以這樣用
有一個解法不知是否合適,也不需要用到 defer,
你可以試試看~
既然可以解出 script tag 了,那麼應該也可以區分出是 script 包裹的段落
以及非 script 包裹的段落吧。
無論是原本的 html ,或要加載的 html ,假設為以下:
<div>123</div>
<script language="javascript">alert ('456');</script>
<div>789</div>
<script language="javascript">alert ('1010');</script>
在 parse 時,按順序以下面分類方式 parse
<div>123</div>
<script language="javascript">alert ('456');</script>
<div>789</div>
<script language="javascript">alert ('1010');</script>
其中紅色在 parse 過去後,一律產生為(parse 出一個段落就產生一組):
h = document.createTextNode ("");
h.data = "xxxx"
灰色部份揚棄,黃色則產生為(parse 一個區塊就產生一組):
s = document.createElement ('script')
s.type = 'text/javascript'
s.text = "xxxx"
最後在重新置入 <div id="test"></div> 時,不要用 innerHTML,
改成依序 appendChild 所有剛剛產生的 node。
這樣接回去的不但不會有問題,可以順利執行,
而且當你 alert test 這個 div 的 innerHTML 時,所有的東西也都乖乖躺在裡面了,
無論是 IE or MF。 :)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.57.130.248
推
10/01 22:40, , 1F
10/01 22:40, 1F
→
10/02 00:06, , 2F
10/02 00:06, 2F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):
Ajax 近期熱門文章
PTT數位生活區 即時熱門文章