1

Selenium を使用して Web ページをロードしています。ページが水平にオーバーフローしているかどうかを検出する必要があります。残念ながら、driver.FindElement(By.TagName("html")).Size.Width実際の HTML 要素がオーバーフローしていても、常にブラウザーの幅を返します。

水平スクロール バーの存在を確認すると機能します。とにかくそれをチェックすることはありますか?

他のアイデアはありますか?

C# コードの例は高く評価されています。

ありがとう、

4

3 に答える 3

1

MrTi の回答の更新として、次の C# コードを使用できます。

 var js = (IJavaScriptExecutor)webDriver;
 var isOverflowing = js.ExecuteScript("$('body').width() >= $(window).width()");

ウィンドウがオーバーフローしている場合、これはブール値を返します

于 2013-09-20T06:24:51.490 に答える
1

C# はわかりませんが、その本質は、ページで次の JQuery を実行することです。

$("body").width() >= $(window).width()

それをブール値にキャストします。

于 2013-09-20T02:37:58.370 に答える