1

例えば。アクティブなメニュー項目のセレクターがあります。

$("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) はどちらも、Firefox や Google Chrome などの実際のブラウザーで jQuery を介して正常に動作します。(1) FirefoxDriver で動作し、(2) 動作しません。

CSS3 サポートを有効にするには、どのバージョンの HtmlUnitDriver を使用すればよいですか? どこで入手できますか?

4

2 に答える 2

1

HtmlUnit開発者はCSS3サポートを追加しようとしましたが、失敗し、何らかの理由で元に戻したようです。 http://sourceforge.net/p/htmlunit/code/7898

したがって、彼らが仕事を終えるまで、正しいHtmlUnitDriverは表示されません。

于 2013-01-05T20:50:37.143 に答える
0

私は1つのアイデアを持っています。js コードを使用してみて、次のように jsExecutor に挿入します。 ここに画像の説明を入力

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());

これがうまくいくことを願っています。

于 2013-01-05T14:58:13.687 に答える