我正在尝试使用PhantomJS打开一个通常通过链接调用的弹出窗口并转储该弹出窗口的图片。我只找到了使用id的方法,但所有链接都具有相同的id,相同的href值和相同的标题。所有链接之间的唯一区别是showpopup函数中的3个字母代码,对应于3个字母的链接文本。
如何做到这一点?我可以启动ShowPopup('XXX')
功能,还是需要找到实际点击链接的方法?
<a href="#" id="ShowInfoHref" title="ABC" onclick="ShowPopup('XXX');return false;">XXX</a>
此链接将打开弹出窗口:
<div class="ui-dialog-content ui-widget-content" id="XXX" style="width: auto; min-height: 25.7667px; height: auto;">...code...</div>
我认为我认为我可以让phantomjs屏幕转储正确吗?
答案 0 :(得分:0)
最简单的方法是简单地拨打ShowPopup('XXX')
:
page.evaluate(function(){
ShowPopup('XXX');
});
setTimeout(function(){
// do something with it
}, 1000);
您还可以使用特定属性CSS选择器a[onclick*="XXX"]
click the link。 [attribute*=value]
选择器匹配属性在任何位置包含值的元素。