0
你好。爲什麼這些`element`對象具有`search`屬性?
我想知道爲什麼下面的代碼片段工作(在最新的Firefox每晚測試):
var links = document.querySelectorAll('a[href]');
for (var i = 0; i < links.length; ++i) {
console.log(links[i].search); // Where does `search` come from?
}
至於「通常,」我得到了href
在每個a
元素的查詢字符串(這是我也可以用一個簡單的substr
或什麼來做,但那不是重點);而如果我做這樣的事情:
var divs = document.querySelectorAll('div');
for (var i = 0; i < divs.length; ++i) {
console.log(divs[i].search);
}
我得到的全部是undefined
。
據MDN,沒有可用於element
對象(document.querySelectorAll(selector)
returns非活element
的NodeList
對象)沒有這樣的事情search
財產。那麼,這些都來自哪裏?
任何幫助將不勝感激。
您正在使用[定位元素](https://developer.mozilla.org/en-US/docs/Web/API/HTMLAnchorElement),因此您必須查看正確的文檔。不同類型的HTML元素節點具有不同的API。 – Pointy
謝謝@Pointy,這非常有道理!我可以接受「評論」作爲「答案」嗎? – d125q
我很懶,但我會輸入回答:) – Pointy