2016-08-02 643 views
0

假設其中有一些內部錨/書籤和其它的HTML通用內容的HTML文檔:document.querySelectorAll('a [id =「*」]');和通配符或正則表達式?

<a id='alfa'></a> 
    other HTML content 
<a id='beta'></a> 
    other HTML content 
<a id='gamma'></a> 
    other HTML content 
<a id='delta'></a> 
    other HTML content 
<a id='omega'></a> 
    other HTML content 
... 
    other HTML content 
<a id='etha'></a> 

其他HTML內容:指別的,甚至其他<a href='something'>沒有任何標識設置

我想要的是一個交叉(最近)的瀏覽器解決方案,以獲得所有主播的ID設置爲但沒有任何ID的那些。

但我想要的是,如果它是可能的,在純js中,只需在一個js命令中選擇,將其id屬性設置爲任何通用valute的所有錨點。

我已經知道,有可能讓他們全部,然後用循環提取我需要的,但這不是最佳的解決方案。 我也知道https://stackoverflow.com/a/8714421/6508528獲取開始,結束或包含一些id部分的元素。 但是,如果我不知道ID的任何部分/子字符串呢?

我不知道會是這樣的:

var allAnchors = document.querySelectorAll('a[id="*"]'); 

,防止需要得到它後重新處理陣列allAnchors

回答

2

這會抓取所有具有id屬性的錨點元素。設置:

document.querySelectorAll('a[id]'); 

這抓住了所有沒有id錨定體:

document.querySelectorAll('a:not([id])'); 
+0

請註明: 這將選擇全部要素** **無任何標識或全部元素**帶* *一些ID? 我在問,因爲我不明白那個位置的非操作符是什麼。 在此先感謝 –

+0

所有錨元素沒有任何id。 – Joundill

+0

噢...對於所有帶有id集的錨元素? –