IE8下關(guān)于querySelectorAll()的問題
querySelectorAll定義與用法
querySelectorAll() 方法返回文檔中匹配指定 CSS 選擇器的所有元素,返回 NodeList 對(duì)象。
NodeList 對(duì)象表示節(jié)點(diǎn)的集合??梢酝ㄟ^索引訪問,索引值從 0 開始。
提示: 你可以使用 NodeList 對(duì)象的 length 屬性來獲取匹配選擇器的元素屬性,然后你可以遍歷所有元素,從而獲取你想要的信息。
基礎(chǔ)測(cè)試代碼
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>腳本之家</title> </head> <body> <h2 class="example">使用 class="example" 的標(biāo)題</h2> <p class="example">使用 class="example" 的段落</p> <p>點(diǎn)擊按鈕為 class="example" (索引為 0) 的第一個(gè)元素設(shè)置背景顏色。</p> <button onclick="myFunction()">點(diǎn)我</button> <p><strong>注意:</strong>Internet Explorer 8 及更早版本不支持 querySelectorAll() 方法。</p> <script> function myFunction() { var x = document.querySelectorAll(".example"); x[0].style.backgroundColor = "red"; } </script> </body> </html>
瀏覽器支持
表格中的數(shù)字表示支持該方法的第一個(gè)瀏覽器的版本號(hào)。
表格中的數(shù)字表示支持該方法的第一個(gè)瀏覽器的版本號(hào)。
方法 | Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|---|
querySelectorAll() | 4.0 | 8.0 | 3.5 | 3.2 | 10.0 |
注意: Internet Explorer 8 支持 CSS2 選擇器。 IE9 及更高版本的瀏覽器已經(jīng)支持 CSS3 選擇器。
當(dāng)用querySelector()或querySelectorAll()查找類似name="2nd_btn"的元素時(shí),F(xiàn)F,chrome和IE8都會(huì)報(bào)錯(cuò)。
FF,chrome報(bào)的錯(cuò)是一樣的,如下所示:
Error: uncaught exception: [Exception... "An invalid or illegal string was specified" code: "12" nsresult: "0x8053000c (NS_ERROR_DOM_SYNTAX_ERR)" location: ".../test/qsa.html Line: 18"]
IE8的報(bào)錯(cuò)提示:行: 18 錯(cuò)誤: 參數(shù)無效。
一尋思,name的值是以數(shù)字開頭的,把數(shù)字去掉或修改后,就能取到了。
這就告訴我們,一般可自定義標(biāo)簽的屬性值時(shí),屬性值不能以數(shù)字開頭,也不能包含$,^等不常用的字符。
在HTML頁面開始一定要記得聲明<!DOCTYPE>。
測(cè)試代碼:
<!DOCTYPE> <html> <head></head> <body> <div id="foo"> <a name="warns" href="">This is a sample warning</a> <a id="3err" href="">This is a sample error</a> </div> <div id="bar"> <a name="warns" href="">This is another sample warning</a> <a name="1err" href="">This is another sample error</a> </div> <script> var a = document.querySelectorAll("[name=warns]") alert(a.length)//輸出:2 var b = document.querySelector("[id=3err]") alert(b.tagName)//報(bào)錯(cuò) var c = document.querySelectorAll("[name=1err]") alert(c.length)//報(bào)錯(cuò) </script> </body> </html>
到此這篇關(guān)于IE8下關(guān)于querySelectorAll()的問題的文章就介紹到這了,更多相關(guān)IE8 querySelectorAll內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
js實(shí)現(xiàn)簡(jiǎn)單進(jìn)度條效果
這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)簡(jiǎn)單進(jìn)度條效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-03-03用javascript關(guān)閉本窗口技巧小結(jié)
window.close()是用來關(guān)閉窗口的,而且ie和firefox都是支持的,下面通過示例為大家介紹下用javascript關(guān)閉本窗口2014-09-09echarts圖形x、y坐標(biāo)文字設(shè)置間隔顯示及相關(guān)問題詳解
最近在做一個(gè)web的數(shù)據(jù)統(tǒng)計(jì)部分用到了Echart,下面這篇文章主要給大家介紹了關(guān)于echarts圖形x、y坐標(biāo)文字設(shè)置間隔顯示及相關(guān)問題的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-08-08js關(guān)閉瀏覽器窗口及檢查瀏覽器關(guān)閉事件
js關(guān)閉瀏覽器窗口,不彈出提示框。支持ie6+,火狐,谷歌等瀏覽器,下面以一個(gè)示例為大家詳細(xì)介紹下具體的實(shí)現(xiàn)方法,感興趣的朋友可以參考下2013-09-09基于JavaScript實(shí)現(xiàn)Tab選項(xiàng)卡切換效果
這篇文章主要介紹了基于JavaScript實(shí)現(xiàn)Tabs選項(xiàng)卡切換效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-11-11webpack5處理圖片、圖標(biāo)字體、多媒體等靜態(tài)資源文件
在 webpack5 中內(nèi)置了 file-loader、url-loader、raw-loader, 可以直接通過配置實(shí)現(xiàn)常用功能,下面就來介紹一下webpack5處理圖片、圖標(biāo)字體、多媒體等靜態(tài)資源文件的實(shí)現(xiàn)方法,感興趣的可以了解一下2023-12-12