PhantomJS,选择器仅适用于第一次

时间:2013-11-25 16:09:52

标签: javascript jquery selector phantomjs

看起来PhantomJS中的选择器出了问题。你能批准还是拒绝?我坐在PC旁边半天,无法理解这个问题。 我有什么:

var page = require('webpage').create();
page.onConsoleMessage = function(msg) {
    console.log('Console: ' + msg);
};

page.open("http://xe.com",function(){
page.evaluate(function() {
    console.log("First: ", $('HTML BODY DIV#main DIV#content DIV#contentL DIV.boxOut DIV.boxOutContent DIV:nth-child(3).boxIn.layout DIV.boxInContent DIV#xRates DIV#xRatesBx TABLE#xRatesBxTable TBODY TR:nth-child(5).xRpadb TD:nth-child(7).rateCell a').length);
    console.log("Second: ", $('HTML BODY DIV#main DIV#content DIV#contentL DIV.boxOut DIV.boxOutContent DIV:nth-child(3).boxIn.layout DIV.boxInContent DIV#xRates DIV#xRatesBx TABLE#xRatesBxTable TBODY TR:nth-child(5).xRpadb TD:nth-child(7).rateCell a').length);
    console.log("Third: ", $('HTML BODY DIV#main DIV#content DIV#contentL DIV.boxOut DIV.boxOutContent DIV:nth-child(3).boxIn.layout DIV.boxInContent DIV#xRates DIV#xRatesBx TABLE#xRatesBxTable TBODY TR:nth-child(5).xRpadb TD:nth-child(7).rateCell a').length);
});
    phantom.exit();
});

执行后我希望看到:

Console: First:  1
Console: Second:  1
Console: Third:  1

但我明白这一点:

Console: First:  1
Console: Second:  0
Console: Third:  0

有人可以解释一下,这里有什么问题吗?实际上我想让这个与不同的选择器一起工作,但它甚至不能使用相同的选择器。只有第一个选择器有效当我使用document.querySelector ...

时,我遇到了同样的情况

0 个答案:

没有答案