藍色玉米月亮
14 years ago
為什麼 js 不能 include js?
latest #18
藍色玉米月亮
14 years ago
是用一些怪怪方法嗎?
藍色玉米月亮
14 years ago
類似 function load(path) { var d = document.createElement(script); d.src = path; document.getElementsByTagName(body)[0].appendChild(d); }
藍色玉米月亮
14 years ago
還是有更好的方法? 怪怪方法通常醜又不穩。
立即下載
藍色玉米月亮
14 years ago
之前試過怪怪方法。用得頻繁一點造成 FireFox 和 IE 一個死當一個功能錯誤。嵌入少數幾個是沒事。
藍色玉米月亮
14 years ago
由於 ajax 常造成一個 script 被 include 兩次。我之前想讓每個 script 只 include 一次。所以用 tag library 全部 script 都動態載入。並判斷加過的不再加。結果掛了。掛在哪我也不知道。結果我對這個方法印象不好。
藍色玉米月亮
14 years ago
如果 js 內建 include, browser 自動避免重覆載入就好了。
Hip Hop KOS says
14 years ago
如果把只想被include一次的js寫成singleton的寫法,那就能自己在載入前先判斷是否已經存在來決定要不要redefine。不知道這樣能不能解決賽大師的問題
藍色玉米月亮
14 years ago
判斷後載入,就不得不用動態載入法,就是前面所說容易掛掉的方法。
Hip Hop KOS says
14 years ago
對啊 因為大部分的js應該都可以用singleton的方式來使用,如果想設計類似class的概念,也有辦法判斷這個class是否有被宣告過來決定要不要再次載入。沒辦法靠瀏覽器只能靠自己了XD
Hip Hop KOS says
14 years ago
我的方式不是動態載入,缺點是遇到像jquery這種public的lib就沒辦法了,除非要改他的code:-P
藍色玉米月亮
14 years ago
自己寫的可以,但大部分都不是自己寫的。
Hip Hop KOS
14 years ago
今天我就嚐到這個惡果了,不小心用ajax load到一個頁面含有load jquery的部分,把plugin都清掉了,一直沒想到有這個可能,還以為是新加的plugin影響的QQ,花了我一個下午= =
back to top