Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在PhantomJS只知道弹出id的情况下打开弹出窗口?_Javascript_Onclick_Phantomjs - Fatal编程技术网

Javascript 如何在PhantomJS只知道弹出id的情况下打开弹出窗口?

Javascript 如何在PhantomJS只知道弹出id的情况下打开弹出窗口?,javascript,onclick,phantomjs,Javascript,Onclick,Phantomjs,我试图使用PhantomJS打开一个弹出窗口,通常通过链接调用,并转储该弹出窗口的图片。我只找到了使用id的方法,但所有链接都有相同的id、相同的href值和相同的标题。所有链接之间的唯一区别是showpopup函数中对应于3个字母链接文本的3个字母代码 如何做到这一点?我可以直接启动ShowPopup'XXX'功能吗?还是我需要找到一种方法来实际点击链接 <a href="#" id="ShowInfoHref" title="ABC" onclick="ShowPopup('XXX')

我试图使用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屏幕转储该div正确吗?

最简单的方法是简单地调用ShowPopup'XXX':

您还可以使用特定的属性CSS选择器a[onclick*=XXX]。[attribute*=value]选择器与属性包含值的元素匹配

page.evaluate(function(){
    ShowPopup('XXX');
});
setTimeout(function(){
    // do something with it
}, 1000);