作者xiphoid ( )
看板Ajax
標題Re: [問題] 外部javascript想知道頁面是否載入完成
時間Mon May 7 13:31:44 2012
2F:→ xiphoid:複製進extjs.js直接使用05/02 12:37
> to xiphoid大:
> 我想把ded domready放進我的extjs.js,用匿名函數包起來,不想讓外面呼叫它,
> function() {
> //這裡是ded domready的code
> })();
> 可是我在外面還是可以呼叫的到它,請問應該要怎麼做呢?
> 這幾天都在研究它,但是看不懂!function (name, definition){...}這一段的意思
!function (name, definition) {
if (typeof module != 'undefined') module.exports = definition()
else if (typeof define == 'function' && typeof define.amd == 'object') ...
else this[name] = definition()
}('domready', function (ready) {
改成
function domready(ready) {
就不會讓domready曝光
說明
----
if (typeof module ...
支援 CommonJS
http://wiki.commonjs.org/wiki/Modules/1.1
else if (typeof define ...
支援 AMD
https://github.com/amdjs/amdjs-api/wiki/AMD
else this[name] = definition()
都沒有就把domready綁到window/global,this在這裡===window
http://addyosmani.com/writing-modular-js/
有相關介紹
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 1.34.34.70
3F:推 On1earth:謝謝xiphoid大,原來是因為被綁到window的關係 05/10 01:37
5F:→ On1earth:結果傳進去的function不會執行,我嘗試搞懂return那段 05/10 01:45
6F:→ On1earth:好像是判斷dom是否已載入,是就直接執行傳進去的函數 05/10 01:46
7F:→ On1earth:否則push到array,等載入完再執行,但是搞不懂為什麼我傳 05/10 01:48
8F:→ On1earth:的函數都沒動作,再拜託xiphoid大幫我看一下,謝謝 05/10 01:49
9F:→ xiphoid:抱歉 其實我沒測試 以為這樣改就好 05/10 08:50
12F:推 On1earth:xiphoid大,已經可以跑囉,我居然花了這麼久的時間研究這 05/11 22:24
13F:→ On1earth:段code,謝謝xiphoid大協助 05/11 22:24