2013-05-25 99 views
2

我只是好奇,如何在document.getElementById()之後調用自定義函數?事情是這樣的:如何添加自定義函數以在document.getElementById之後調用?

document.getElementById("element").mycustomfunction(); 
+0

你**可以**添加一個函數元素的原型,但你不應該。爲什麼你不能簡單地將元素作爲參數傳遞給你的自定義函數? –

+0

這取決於'mycustomfunction()'是什麼 – samayo

+0

@dystroy我可以做到這一點,我知道如何,我只是好奇,我怎麼能做到什麼問。 – Zachrip

回答

3

從技術上講,你可以這樣做:

Element.prototype.mycustomfunction = function() { 
    console.log("I don't work on IE7"); 
}; 

您可以輕鬆地測試它在控制檯此頁上:第一,然後document.getElementById("notify-container").mycustomfunction();輸入。

它的工作原理。沒有技術問題。但是它可能會讓維護者的應用程序難以跟蹤發生的情況,這可能會導致與其他插件相同的衝突,而且它並沒有真正增加myPlugin.doSomething(element)

+1

以下是爲什麼不應該這樣做的一些原因:http://perfectionkills.com/whats-wrong-with-extending-the-dom/ – bfavaretto

+1

@bfavaretto:這是一篇很老的文章,主要適用於IE6/7。 – 2013-05-25 19:07:27

+0

謝謝你的回答,僅僅是爲了看到這個頁面的任何未來的人不想閱讀整篇文章,請你列舉一些爲什麼我不應該**使用它的原因? – Zachrip

相關問題