ユーザーがブラウザで下にスクロールしても、Google Chromeはユーザー補助要素(AutomationElement)を更新しません。
それを再現するには:
- を使用して、
"chrome --force-render-accessibility"
またはでグローバルアクセシビリティを設定して、レンダラーのアクセシビリティを有効にします"chrome://accessibility"
。 - 行くhttp://en.wikipedia.org/wiki/Google
- (Windowsキットの)UIオートメーションモードでinspect.exeを開き、「関連記事へのリンク」要素を探します。
- Chromeに戻り、下部にある[関連記事へのリンク]が表示されるまで下にスクロールします
- 「関連記事へのリンク」要素が画面外にマークされている
Chromeに強制的に更新させる手動の解決策をいくつか見つけました。
- ズームを90%に設定してから100%に戻します(非常に醜い方法です)
- アクセシビリティをオフにしてからオンに切り替える
chrome://accessibility/
私が探しているのは、これらの操作の1つをプログラムで実行する機能、またはChromeにキャッシュツリーを更新させる操作です。
私が試したこと:
- ウィンドウのサイズを変更
PInvoke/MoveWindow
- ウィンドウを再描画
PInvoke/Redrawwindow
- クロム拡張機能を作成し、オンデマンドでズームを100%に強制します:(
chrome.tabs.setZoom(null, 0);
機能しますが、点滅してウィンドウが遅くなります)
これらはどれも正しく機能していません。
編集:Windows 7でGoogle Chrome 40.XX、41.XX、42.XX、43.XX、44.XX、45.XX、46.XX、47.XX.Dev、48.XX.Devでテスト済み。