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