下面的代碼將達到「之前」和「之間」警報,但不是「之後」警報。JavaScript中的Xpath評估不相對於某些元素工作
alert("before")
var test = document.evaluate('.//*',document,document.createNSResolver(document),XPathResult.ANY_TYPE,null)
alert(element.tagName)//alerts "TABLE"
alert("between")
test = document.evaluate('.//*',element,document.createNSResolver(document),XPathResult.ANY_TYPE,null)
alert("after")
這寫成硒擴展的一部分。代碼中的alert(document)
給出的結果與在螢火蟲中運行時的alert(document)
不同。 [object XULDocument] vs [object HTMLDocument]。
它不是未定義的,它只是沒有在我發佈的內容中定義。只是假設它是文檔中的某個元素。 – Zackkenyon 2013-02-15 23:20:47
我添加了一行來使這個更清晰。 – Zackkenyon 2013-02-15 23:31:13
hm ...看着這個頁面並輸入控制檯'var element = document.getElementById('footer'); test = document.evaluate('.//*',element,document.createNSResolver(document),XPathResult.ANY_TYPE,null);'返回一個可用的'XPathResult'對象。 – Jerry 2013-02-16 00:08:27