今天寫了乙個很簡單、很粗暴的通過js根據類來查詢dom元素。
為了降低它的粗暴等級(耗費效能)我給了三個等級。
首先效能最好的,適合ff,ch,ie8,通過queryselectorall這個api。
其次是指定id
最後只能全頁面進行匹配class,不過比較節省的效能的是,在指定class名稱的時候,同時傳入html標籤的型別,用於節省遍歷的範圍!
因為水平有限,目前也只能寫成這種,真的好好奇jq的選擇器是怎麼去匹配dom的,如果有大神看到這篇文章,請不要吝嗇施教。。。
下面貼**:
1function
$(d,t)
1112
if(type(d) == 'string')else
if(/^#[a-z,a-z,_]\w*$/.test(d))else
if(/^[a-z,a-z,_]+$/.test(d))else
23if
(document.queryselectorall)else38}
39return
em;40 }else
if(e)else
if(i)45}
4647 }else
5051 }
呼叫方式:
$('selector'[,type])
原生JS獲取HTML DOM元素
通過id獲取 getelementbyid document.getelementbyid id 通過name屬性 getelementsbyname document.getelementsbyname name 通過標籤名 getelementsbytagname document.getele...
原生js獲取子元素
獲取子元素的方法有 獲取第乙個demo類 dom document.getelementsbyclassname demo 0 獲取父節點 dom.parentnode 獲取上一兄弟節點 dom.previoussibling dom.nextsibling 獲取第乙個子元素 dom.firstch...
原生js元素歷遍
父元素 parentnode 沒有相容性問題 offsetparent 獲取的是首個獲得 絕對定位或者相對定位 的 元素 最終會找到html 子元素 1 childnodes 屬性。標準的,它返回指定元素的子元素集合,包括html節點,所有屬性 文字。可以通過nodetype來判斷是哪種型別的節點,...