好吧,還是用英文 chrome 好了。這個東西號稱可以跑得比 Firefox 跟 愛姨 快,不過相容性就沒有那麼好了。
這兩天在做多國語言的工作的時候才突然發現到,原來 chrome 在做 DOM createElement 如果是 script 的時候會出問題。不能動態新增 js 的片段。
意即:
var head = document.getElementsByTagName('head').item(0);
var script = document.createElement('script');
script.src = "a.js";
script.type = 'text/javascript';
head.insertBefore(script, head.childNodes[0]);
這段在 chrome 是沒有用的,但是在愛姨跟 Firefox 上面還是有用。(這樣就有 70% 的達成率了)
那?要新增 js 的片段怎麼辦?
用回最簡單的方式吧~
document.write
這個解法當然只有 60 分,勉強可以用啦。
2 則留言:
var script = document.createElement('script');
script.src = "a.js";
script.onload=function(){alert('compelete')}
document.getElementsByTagName('head')[0].appendChild(script);
謝謝你的補充,雖然沒留下個隻字片語有點沒禮貌。
不過,用 src 是可以考慮的,除了 scope 之外,多一個檔案就要多一個 maintain 的心力,在某些場合,例如嵌入式裝置上面可能就沒那麼適合。
張貼留言