document.getElementById的簡(jiǎn)寫方式(獲取id對(duì)象的簡(jiǎn)略寫法)
更新時(shí)間:2010年09月10日 00:14:12 作者:
在js編寫中,經(jīng)常需要獲取id對(duì)象,如果直接用getElementById來獲取,代碼多而且老的瀏覽器不支持這屬性,所有大家可以考慮用下面的代碼。
比如用_$(id)代替document.getElementById(id).
如果是純粹的代替可以使用下面的代碼
function $(id){document.getElementById(id)}
個(gè)人比較推薦用prototype中對(duì)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文件省掉不少字符,還可以避免輸入時(shí)的錯(cuò)誤.
有一個(gè)小小的說明,$是一個(gè)自定義的值,你可以根據(jù)你的喜好寫任何一個(gè)非JavaScript保留關(guān)鍵字,比如i_d,myid,等等你喜歡的定義.如果你的頁(yè)面中調(diào)用到了jQuery的庫(kù)文件,你可以直接用$代替document.getElementById.
如果是純粹的代替可以使用下面的代碼
復(fù)制代碼 代碼如下:
function $(id){document.getElementById(id)}
個(gè)人比較推薦用prototype中對(duì)document.getElementById的定義:
復(fù)制代碼 代碼如下:
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;
}
你還可以用以下代碼來定義:
復(fù)制代碼 代碼如下:
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文件省掉不少字符,還可以避免輸入時(shí)的錯(cuò)誤.
有一個(gè)小小的說明,$是一個(gè)自定義的值,你可以根據(jù)你的喜好寫任何一個(gè)非JavaScript保留關(guān)鍵字,比如i_d,myid,等等你喜歡的定義.如果你的頁(yè)面中調(diào)用到了jQuery的庫(kù)文件,你可以直接用$代替document.getElementById.
您可能感興趣的文章:
- document.getElementById獲取控件對(duì)象為空的解決方法
- js中document.getElementByid、document.all和document.layers區(qū)分介紹
- document.getElementById介紹
- jquery中的 $("#jb51")與document.getElementById("jb51") 的區(qū)別
- document.getElementById方法在Firefox與IE中的區(qū)別
- document.getElementById為空或不是對(duì)象的解決方法
- 各瀏覽器對(duì)document.getElementById等方法的實(shí)現(xiàn)差異解析
相關(guān)文章
JavaScript中字面量與函數(shù)的基本使用知識(shí)
這篇文章主要介紹了JavaScript中字面量與函數(shù)的基本使用知識(shí),包括構(gòu)造函數(shù)和自調(diào)用函數(shù)的相關(guān)概念解釋,需要的朋友可以參考下2015-10-10js中scrollHeight,scrollWidth,scrollLeft,scrolltop等差別介紹
js中scrollHeight,scrollWidth,scrollLeft,scrolltop等差別介紹,需要的朋友可以看看2012-05-05javascript、php關(guān)鍵字搜索函數(shù)的使用方法
這篇文章主要介紹了javascript、php關(guān)鍵字搜索函數(shù)的使用方法的相關(guān)資料,需要的朋友可以參考下2018-05-05window.location.href的用法(動(dòng)態(tài)輸出跳轉(zhuǎn))
無論在靜態(tài)頁(yè)面還是動(dòng)態(tài)輸出頁(yè)面中window.location.href都是不錯(cuò)的用了跳轉(zhuǎn)的實(shí)現(xiàn)方案2014-08-08Typescript中的as、問號(hào)與感嘆號(hào)詳解
這篇文章主要介紹了Typescript中的as、問號(hào)與感嘆號(hào)詳解,本文分別講述了這幾個(gè)關(guān)鍵字的含義作用以及實(shí)例,通過文字和代碼的描述,詳細(xì)的表達(dá).以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07JavaScript charCodeAt方法入門實(shí)例(用于取得指定位置字符的Unicode編碼)
這篇文章主要介紹了JavaScript charCodeAt方法入門實(shí)例,charCodeAt方法用于取得指定位置字符的Unicode編碼,需要的朋友可以參考下2014-10-10