如果我告訴XPath評估者我想要一個XPathResult.FIRST_ORDERED_NODE_TYPE
(8)而不是ANY_UNORDERED_NODE_TYPE
(9),我會得到body
元素,但是所有其他結果類型都會產生一個The expression cannot be converted to return the specified type.
異常(在Firefox中; WebKit和Opera似乎爲了清楚起見,爲了更清楚地說明問題:爲什麼選擇上下文節點時出現類型錯誤,而不是明確推斷爲單節點結果,爲什麼選擇上下文節點時出現類型錯誤,這從XPath表達式本身是很明顯的("."
,"self::node()"
的同義詞),至少對我自己來說是一個人類?爲什麼document.evaluate('。',document.body,null,XPathResult.ANY_TYPE,null).singleNodeValue拋出異常?
(僅供參考,不訪問.singleNodeValue
明確觸發錯誤 - 所有XPathResult的屬性是表示此相同的錯誤。)