phantomjs获得所有img元素

时间:2013-04-04 12:49:17

标签: javascript phantomjs dom-traversal

我在为自己做的练习中有以下代码:

var imgs = page.evaluate(function() {
   return document.images;
});

for (var i in imgs){
    console.log("source: " + i.src);
}

但我只收到多条“未定义”的消息。

当我尝试getAttribute('src')时,我得到:“'undefined'不是函数...”错误信息。

我已经验证该页面包含带有src属性的img元素。

解决方案:

我按照以下建议解决了这个问题:

for (var i = 0; i < imgs.length; i++){
    if (imgs[i])
        console.log("source: " + imgs[i].src);
}

有关详细信息,请参阅this question

1 个答案:

答案 0 :(得分:2)

试试这个:

for (var i = 0; i < imgs.length; i++) {
    console.log("source: " + imgs[i].src);
}

代替

for (var i in imgs){
    console.log("source: " + i.src);
}