js中的原生元素選擇器

2021-09-24 01:48:18 字數 1042 閱讀 7289

當我們想要選擇dom中的元素時,第乙個想到的就是document.getelementbyid()和document.getelementsbytagname(),還有針對表單的document.getelementsbyname();

在h5中我們又有了類選擇器:getelementsbyclassname(),但這個方法不相容ie8及以下,我麼在使用時還是需要寫乙個相容的函式,因為現在還是很多ie8的,至於為什麼不考慮ie8以下,呵呵,我給你乙個眼神,自己體會。

但在前幾天我突然看到書上的兩個選擇器queryselect()和queryselectall(),發現他們竟然相容ie8,這個真的是太棒了。

他們的用法和getelement用法是一樣的,但是選擇符適合jquery一樣的!:

複製**

複製**

我們使用queryselect()

console.log(document.queryselector('#a'));

console.log(document.queryselector('.a'));

console.log(document.queryselector('.aa'));

我們發現輸出的是

,,
這說明queryselector()選擇的只是所有中的第乙個元素,而且返回的是元素物件,不是陣列。

使用queryselectall()

console.log(document.queryselectorall('#a'));

console.log(document.queryselectorall('.a'));

console.log(document.queryselectorall('.aa'));

這時輸出的是[li#a],[li.a],[li.aa,li.b.aa,li.aa];

這說明queryselector()選擇的是所有符合條件的元素,並返回陣列。

因為這兩個方法相容ie8所以可以大膽的使用

js中的原生元素選擇器

js中的原生元素選擇器 當我們想要選擇dom中的元素時,第乙個想到的就是document.getelementbyid 和document.getelementsbytagname 還有針對表單的document.getelementsbyname 在h5中我們又有了類選擇器 getelements...

js原生後代選擇器 CSS 後代選擇器

具體應用 後代選擇器的功能極其強大。有了它,可以使 html 中不可能實現的任務成為可能。假設有乙個文件,其中有乙個邊欄,還有乙個主區。邊欄的背景為藍色,主區的背景為白色,這兩個區都包含鏈結列表。不能把所有鏈結都設定為藍色,因為這樣一來邊欄中的藍色鏈結都無法看到。解決方法是使用後代選擇器。在這種情況...

原生JS寫的emoji表情選擇器

筆者寫這玩意找過n個表情選擇器,都用到jquery,移動端實在不合適,因為jquery用min都得90k。而且不需要表情轉文字或文字轉表情這種功能。本文用到的是div輸入框,且選擇表情後是直接往文字內容插入一段html emoji為svg格式 效果表現是即見即得。上 html div name no...