MozTW 討論區

各項 Mozilla 相關軟體與技術討論
現在的時間是 2025-08-22, 11:20

所有顯示的時間為 UTC + 8 小時





發表新文章 回覆主題  [ 4 篇文章 ] 
發表人 內容
文章發表於 : 2007-11-17, 00:44 
離線
頭像

註冊時間: 2006-11-01, 15:18
文章: 132
在 Firefox 上 (或者說遵守標準的瀏覽器)

要擴充原本 JavaScript 非核心物件的函式

可以像以下的例子這樣做:

代碼:
HTMLFormElement.prototype.newFunc=function(){
.....
};

document.forms[0].newFunc();


但是在 IE 上就會出錯 (/‵Д′)/~ ╧╧

說什麼 HTMLFormElement 未定義...

試了一下,連 Event 跟 Window 這些物件都未定義...(靠么~那平常怎麼用的?)

請問有人知道怎麼樣在 IE6 上做出同樣的功能嗎?

感謝 m(_ _)m


回頂端
Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-TW; rv:1.8.1.9) Gecko/20071025 Firefox/2.0.0.9
 個人資料  
引用回覆  
 文章主題 :
文章發表於 : 2007-11-17, 14:34 
離線
[網站管理員]
頭像

註冊時間: 2004-09-27, 09:24
文章: 1685
IE 並不提供 DOM 物件的 prototype。
像 Prototype.js 和 jQuery 之所以可以提供這種 method addon 是因為那些 DOM 物件都是他們的函式傳回來的,而他們在傳回來之前會直接把 method 設定和加上去,而不是用 prototype。這在 IE 好像叫做 expando。

比如說:
var x = document.forms[0];
x.newFunc = function() {
// ...
};

_________________
korp + korp 中文站(沒精神更新)


回頂端
Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US; rv:1.8.1.9) Gecko/20071025 Firefox/2.0.0.9
 個人資料  
引用回覆  
 文章主題 :
文章發表於 : 2007-11-17, 15:10 
離線
頭像

註冊時間: 2006-11-01, 15:18
文章: 132
kourge 寫:
IE 並不提供 DOM 物件的 prototype。
像 Prototype.js 和 jQuery 之所以可以提供這種 method addon 是因為那些 DOM 物件都是他們的函式傳回來的,而他們在傳回來之前會直接把 method 設定和加上去,而不是用 prototype。這在 IE 好像叫做 expando。

比如說:
var x = document.forms[0];
x.newFunc = function() {
// ...
};


感謝回應^^

這有點像 Prototype 裡的 Object.extend 方法...



唉...本來就討厭 IE 了

網頁應用寫久後更是覺得 IE 怎麼不快點去死一死...

不遵守標準+特立獨行+更新超慢


回頂端
Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-TW; rv:1.8.1.9) Gecko/20071025 Firefox/2.0.0.9
 個人資料  
引用回覆  
 文章主題 :
文章發表於 : 2007-11-18, 01:11 
離線
[網站管理員]
頭像

註冊時間: 2004-09-27, 09:24
文章: 1685
GlinX 寫:
kourge 寫:
IE 並不提供 DOM 物件的 prototype。
像 Prototype.js 和 jQuery 之所以可以提供這種 method addon 是因為那些 DOM 物件都是他們的函式傳回來的,而他們在傳回來之前會直接把 method 設定和加上去,而不是用 prototype。這在 IE 好像叫做 expando。

比如說:
var x = document.forms[0];
x.newFunc = function() {
// ...
};


感謝回應^^

這有點像 Prototype 裡的 Object.extend 方法...

Prototype 內部做 expando 就正是利用 Object.extend 的...

_________________
korp + korp 中文站(沒精神更新)


回頂端
Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US; rv:1.8.1.9) Gecko/20071025 Firefox/2.0.0.9
 個人資料  
引用回覆  
顯示文章 :  排序  
發表新文章 回覆主題  [ 4 篇文章 ] 

所有顯示的時間為 UTC + 8 小時


誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 18 位訪客


不能 在這個版面發表主題
不能 在這個版面回覆主題
不能 在這個版面編輯您的文章
不能 在這個版面刪除您的文章
不能 在這個版面上傳附加檔案

搜尋:
前往 :  
Powered by phpBB® Forum Software © phpBB Group
正體中文語系由 竹貓星球 維護製作
© moztw.org, Mozilla Foundation
MozTW,Mozilla 台灣社群