2011-07-11 61 views
3

我寫的東西,使用document.getElementById了很多,所以我在想,如果不是我應該作出這樣一個功能:有沒有理由不使用document.getElementById的簡寫?

function gid (id) { 
return document.getElementById(id); 
} 

,然後只是把它想:

alert(gid("test").innerText); 
+0

您有問題要問? –

+0

哦,我明白了。對不起,我不知道你必須這樣做。 – mowwwalker

回答

8

不,我們沒有理由不要。通常大多數人使用jQuery來做這樣的事情。

+0

沒錯,但是我遇到了麻煩,因爲jquery的'.text()'沒有像'.innerText'那樣保持格式。 – mowwwalker

+4

你總是可以得到一個jQuery結果並添加.get(),它將基本上得到你的DOM元素,然後你可以使用任何有效的DOM方法。 –

+0

只需添加一些關於不同(甚至更好)的框架:在MooTools中,簡寫爲'document.id()'。 – Tadeck

2

這是一個好主意 - 它會幫助縮小(如果您選擇縮小),並且在意外輸入document.getElementsById時可以節省惱人的拼寫錯誤。如果您使用它,也可以縮短document.getElementsByTagName

+0

我同意詹姆斯!我認爲這是有道理的。 –

1

我不認爲這是一個壞主意。對於一次調用gid()將比document.getElementById()更短。另外,您現在可以修改gid函數中的內容,以便您可以使用document.getElementById以外的內容。

1

使用document.getElementById只會讓你更快,當你有一個巨大的JavaScript,而不是使用任何標準庫如JQuery。

0

我不是說你不應該提供替換功能,但有一些缺點,所以你應該確保平衡有利於改變。幾個原因不縮短它:

  1. 它現在是非標準的代碼,其他知道DOM/Javascript的人將無法識別,並且必須在他們能夠理解之前學習。
  2. 這是一個額外的函數調用,所以大概你的新的額外函數不是那麼快。
  3. 您正在失去處理不同文檔或文檔片段的功能(儘管不常用)。
相關問題