例如。 我有一个活动菜单项的选择器:
$("ul#menu li a[href='/']")
其余菜单项的选择器(1):
$("ul#menu li a:not([href='/'])")
但是“:not”出现在CSS3中并且不受HtmlUnitDriver的支持。我试过
org.seleniumhq.selenium:selenium-htmlunit-driver:2.28.0
我也尝试了下一个选择器(2)
$("ul#menu li a[href!='/']")
(1)和(2)都可以通过jQuery在Firefox或Google Chrome等真实浏览器中正常运行。 (1)适用于FirefoxDriver,(2)不适用。
我应该使用哪个版本的HtmlUnitDriver来启用CSS3支持?我在哪里可以得到它?
答案 0 :(得分:1)
似乎HtmlUnit开发人员试图添加CSS3支持但由于某些原因失败并将其还原。 http://sourceforge.net/p/htmlunit/code/7898
因此,在他们完成工作之前,我们不会看到正确的HtmlUnitDriver。
答案 1 :(得分:0)
JavascriptExecutor js = (JavascriptExecutor) driver;
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("var x = ($("ul a:not([href='/'])")[23]);");
stringBuilder.append("x.click();");
js.executeScript(stringBuilder.toString());
希望这适用于你。