C# Selenium:使用C获取元素的动态坐标#
使用C# Selenium:使用C获取元素的动态坐标#,c#,selenium-webdriver,C#,Selenium Webdriver,使用IWebElement.Location,我可以得到元素左上角相对于页面左上角的坐标 但是这个位置没有告诉我元素在当前浏览器窗口中的位置,也就是说,它是在屏幕外还是在屏幕上,如果是在屏幕上,那么它是靠近顶部、底部还是中部等等。有没有办法在C#中获取这些信息 谢谢 编辑: 在上下文中,我试图解决的问题是这样的: 1.创建Selenium WebDriver实例并转到页面 2.单击目录表上的链接,如Selenium IDE。 我需要验证单击链接是否会将我带到页面上的Selenium IDE部分,
IWebElement.Location
,我可以得到元素左上角相对于页面左上角的坐标
但是这个位置没有告诉我元素在当前浏览器窗口中的位置,也就是说,它是在屏幕外还是在屏幕上,如果是在屏幕上,那么它是靠近顶部、底部还是中部等等。有没有办法在C#
中获取这些信息
谢谢
编辑:在上下文中,我试图解决的问题是这样的:
1.创建Selenium WebDriver实例并转到页面
2.单击目录表上的链接,如Selenium IDE。
我需要验证单击链接是否会将我带到页面上的Selenium IDE部分,即Selenium IDE部分现在显示在浏览器窗口顶部附近。早就应该显示您正在查找的内容
driver.FindElement(By.Id("MyID")).Displayed
或者,在您的情况下:
IWebElement.Displayed;
也许这就是你想要的答案。您可能必须依赖javascript。以下是我的想法: 或者,等等!你可以用纯硒来做这个。(与链接中的基本思想相同。)
$(window.scrollTop()
IWebElement.Displayed
返回true,无论该元素是在屏幕上还是在屏幕外。那对我没什么帮助。我想知道元素在当前显示屏幕中的位置。我想要类似于IWebElement.Location
的东西,但随着我向上或向下滚动页面,它会发生变化。