java phantomjs改变屏幕分辨率

时间:2016-11-03 20:26:54

标签: javascript java selenium-webdriver phantomjs ghostdriver

我需要覆盖屏幕对象。 我在这里How do I override window.screen?http://phantomjs.org/api/webpage/handler/on-initialized.html使用了这些例子 但我的代码不起作用。

PhantomJSDriver phantom = new PhantomJSDriver(caps);
phantom.executePhantomJS("onInitialized = function() {\n" +
                "    evaluate(function() {\n" +
                "        window.screen.availWidth = 1024;\n" +
                "        window.screen.availHeight = 768;\n" +
                "    });\n" +
                "};");
System.out.println(phantom.executeScript("return window.screen;"));
phantom.get("http://www.browserleaks.com/javascript");
System.out.println(phantom.executeScript("return window.screen;"));

这是我的控制台输出:

{availWidth=1440, pixelDepth=32, availTop=0, width=1440, colorDepth=32, availLeft=0, availHeight=860, height=900}
{availWidth=1440, pixelDepth=32, availTop=0, width=1440, colorDepth=32, availLeft=0, availHeight=860, height=900}

注意这一行:

webDriver.manage().window().setSize(new Dimension(980, 1461));

仅更改屏幕对象中的availWidthavailHeight属性。

有人可以建议我如何覆盖屏幕对象中的所有属性吗?

0 个答案:

没有答案