看板 Ajax 關於我們 聯絡資訊
最近剛開始接觸javascript 我知道javascript裡面沒有include這種東西 所以要自行撰寫函式來使用 網路上目前找到的,大致如下: function load(path) { var d = document.createElement(script); d.src = path; document.getElementsByTagName(body)[0].appendChild(d); } 不過這種方式達不到我的目標 最近在網路上看到一支js應用程式(ex. a.js)是另外使用jQuery framework來撰寫 它是直接將jquery-1.2.6.js跟一些plugin的內容全部複製到該js檔內 只是我覺得這樣看起來很亂,想用類似include的方式,將它們獨立出來,先使用 上面的function將jquery-1.2.6.js include進來後,再開始程式的撰寫。 不過要是用上面的function會失敗,出現jQuery未定義的訊息。 是因為變數scope的問題,還是其他原因?有解決方式嗎? js檔include其他js檔、css檔是不是不常見, 因為沒有include,所以code reuse只能用複製的方式嗎? -- 『人生中有無數的選擇,卻沒有絕對正確的選擇, 你只要在選擇後讓它變成正確的就好。』 <<紅>> 柔澤紅香 juzawa benika -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.227.140.54
SMUGEN:動態載入的.js還沒完全載入script就會往下run了 append之後 07/17 01:23
SMUGEN:script繼續跑 同時間browser也正在get那個js檔 所以囉... 07/17 01:24
SMUGEN:如果是用<script>直接插在<head>裡面就會完全載入後才往後 07/17 01:26
SMUGEN:解譯html 當然也包括後面的<script>裡的js 我是用這方法啦 07/17 01:27
SMUGEN:如果非動態載入不可的話 我想應該可以設個timer去測jQuery 07/17 01:29
SMUGEN:是否定義 否則一樣再設timer 是則執行後續的js 不知可行否? 07/17 01:31
Fenikso:用xmlhttprequest把檔案抓下來直接eval? 07/17 03:00
Fenikso:(把Asynchronous設成false) 07/17 03:01
Fenikso:不過這樣網頁會卡住.. 07/17 03:01
TonyQ:Fenikso 網頁會卡住才符合原po需求...~_~ 07/17 09:58