2009/07/02

[Programming] Chrome 不合群 Javascript 不好寫。

話說 Google 大神出了自已的 Browser 的事情大家都知道,它的名字叫克隆美.. (是這樣唸嗎?)
好吧,還是用英文 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);

anton 提到...

謝謝你的補充,雖然沒留下個隻字片語有點沒禮貌。

不過,用 src 是可以考慮的,除了 scope 之外,多一個檔案就要多一個 maintain 的心力,在某些場合,例如嵌入式裝置上面可能就沒那麼適合。

[Windows] git-bash 底下的工具

因為工作轉到 Windows 平台上的關係,所以很多工具改到 Windows 上面運作,跟著在 TortoiseGit 底下使用 git-bash 來維護自己的專案原始碼。結果就是裝了前面提過的 auto-hotkey 使用熱鍵來提昇自己的平台操作速度; 但除了 hotkey...