document.getElementById的簡寫方式(獲取id對象的簡略寫法)
更新時間:2010年09月10日 00:14:12 作者:
在js編寫中,經(jīng)常需要獲取id對象,如果直接用getElementById來獲取,代碼多而且老的瀏覽器不支持這屬性,所有大家可以考慮用下面的代碼。
比如用_$(id)代替document.getElementById(id).
如果是純粹的代替可以使用下面的代碼
function $(id){document.getElementById(id)}
個人比較推薦用prototype中對document.getElementById的定義:
function $()
{
var elements = new Array();
for (var i = 0; i < arguments.length; i++)
{
var element = arguments[i];
if (typeof element == 'string')
element = document.getElementById(element);
if (arguments.length == 1)
return element;
elements.push(element);
}
return elements;
}
你還可以用以下代碼來定義:
function $(objectId) {
if(document.getElementById && document.getElementById(objectId)) {
return document.getElementById(objectId);// W3C DOM
} else if (document.all && document.all(objectId)) {
return document.all(objectId);// MSIE 4 DOM
} else if (document.layers && document.layers[objectId]) {
return document.layers[objectId];// NN 4 DOM.. note: this won't find nested layers
} else {
return false;
}
}
這樣寫不斷可以為JS文件省掉不少字符,還可以避免輸入時的錯誤.
有一個小小的說明,$是一個自定義的值,你可以根據(jù)你的喜好寫任何一個非JavaScript保留關(guān)鍵字,比如i_d,myid,等等你喜歡的定義.如果你的頁面中調(diào)用到了jQuery的庫文件,你可以直接用$代替document.getElementById.
如果是純粹的代替可以使用下面的代碼
復制代碼 代碼如下:
function $(id){document.getElementById(id)}
個人比較推薦用prototype中對document.getElementById的定義:
復制代碼 代碼如下:
function $()
{
var elements = new Array();
for (var i = 0; i < arguments.length; i++)
{
var element = arguments[i];
if (typeof element == 'string')
element = document.getElementById(element);
if (arguments.length == 1)
return element;
elements.push(element);
}
return elements;
}
你還可以用以下代碼來定義:
復制代碼 代碼如下:
function $(objectId) {
if(document.getElementById && document.getElementById(objectId)) {
return document.getElementById(objectId);// W3C DOM
} else if (document.all && document.all(objectId)) {
return document.all(objectId);// MSIE 4 DOM
} else if (document.layers && document.layers[objectId]) {
return document.layers[objectId];// NN 4 DOM.. note: this won't find nested layers
} else {
return false;
}
}
這樣寫不斷可以為JS文件省掉不少字符,還可以避免輸入時的錯誤.
有一個小小的說明,$是一個自定義的值,你可以根據(jù)你的喜好寫任何一個非JavaScript保留關(guān)鍵字,比如i_d,myid,等等你喜歡的定義.如果你的頁面中調(diào)用到了jQuery的庫文件,你可以直接用$代替document.getElementById.
您可能感興趣的文章:
- document.getElementById獲取控件對象為空的解決方法
- js中document.getElementByid、document.all和document.layers區(qū)分介紹
- document.getElementById介紹
- jquery中的 $("#jb51")與document.getElementById("jb51") 的區(qū)別
- document.getElementById方法在Firefox與IE中的區(qū)別
- document.getElementById為空或不是對象的解決方法
- 各瀏覽器對document.getElementById等方法的實現(xiàn)差異解析
相關(guān)文章
javascript學習筆記(九) js對象 設(shè)計模式
javascript學習筆記之js對象 設(shè)計模式介紹,需要的朋友可以參考下2012-06-06
Javascript SHA-1:Secure Hash Algorithm
Javascript SHA-1:Secure Hash Algorithm...2006-12-12
JavaScript基礎(chǔ)之Array?forEach使用示例
這篇文章主要為大家介紹了JavaScript基礎(chǔ)之Array?forEach使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-12-12
在firefox和Chrome下關(guān)閉瀏覽器窗口無效的解決方法
首先IE是可以通過window.close()來關(guān)閉瀏覽器窗口的,但是在firefox和Chrome下是無效的,但是可以通過一些特殊的手段進行關(guān)閉2014-01-01
JavaScript基礎(chǔ)語法、dom操作樹及document對象
本文介紹了學習javascript重要的3個內(nèi)容基礎(chǔ)語法、dom操作樹及document對象,小伙伴們一定要弄明白才行2014-12-12
JavaScript中利用各種循環(huán)進行遍歷的方式總結(jié)
這篇文章主要介紹了JavaScript中利用各種循環(huán)進行遍歷的方式總結(jié),是JS入門學習中的基礎(chǔ)知識,需要的朋友可以參考下2015-11-11

