$x()
non fa parte dell'ambiente di runtime di una pagina Web o di uno script di contenuto. È uno strumento che fa parte di the Command Line API for Chrome's DevTools.
Per utilizzare XPath in uno script di contenuto, è necessario farlo normalmente, la comoda scorciatoia DevTools non è disponibile.
Il codice sarà simile a questa:
var jpgLinks = document.evaluate (
"//a[contains(@href,'.jpg')]",
document,
null,
XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
null
);
var numLinks = jpgLinks.snapshotLength;
for (var J = 0; J < numLinks; ++J) {
var thisLink = jpgLinks.snapshotItem (J);
console.log ("Link ", J, " = ", thisLink);
}
- che è il tipo di cosa che $x()
stava facendo per te, dietro le quinte.
Mentre si è in esso, in considerazione il passaggio a CSS selectors. Poi la stessa funzionalità è:
var jpgLinks = document.querySelectorAll ("a[href$='.jpg']");
var numLinks = jpgLinks.length;
for (var J = 0; J < numLinks; ++J) {
var thisLink = jpgLinks[J];
console.log ("Link ", J, " = ", thisLink);
}
- che è molto più appetibile nel mio libro.
fonte
2013-08-26 00:09:02
Suggerimento: digitare 'debugger;' nella console. –
Bit confuso su quali informazioni extra mi vengono rivelate? – rutherford
Provalo. Avresti visto http://i.stack.imgur.com/AXRPG.png –