$x()
không phải là một phần của môi trường thời gian chạy của trang web hoặc tập lệnh nội dung. Nó là một công cụ là một phần của the Command Line API for Chrome's DevTools.
Để sử dụng XPath trong tập lệnh nội dung, bạn cần thực hiện theo cách thông thường, phím tắt tiện lợi của DevTools không khả dụng.
Mã của bạn sẽ trông như thế này:
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);
}
- đó là loại điều mà $x()
đang làm gì cho bạn, đằng sau hậu trường.
Khi bạn ở đó, hãy xem xét chuyển sang CSS selectors. Sau đó, chức năng tương tự là:
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);
}
- có nhiều điều thú vị hơn trong sách của tôi.
Nguồn
2013-08-26 00:09:02
Gợi ý: Nhập 'trình gỡ lỗi'; trong bảng điều khiển. –
Bit bối rối như những gì thêm thông tin mà tiết lộ cho tôi? – rutherford
Chỉ cần thử nó. Bạn sẽ thấy http://i.stack.imgur.com/AXRPG.png –