我正在尝试使一些自动化软件自动化Chrome。我可以导航到页面,页面有一个像这样声明的按钮:
<div class="bn_diff_image">
<a href="javascript:setMode('ImageText', 0);"></a>
</div>
类显示一个按钮的图像。我需要单击该按钮(执行javascript),但我不能得到它的工作。以下是我尝试过的代码:
chromeDriver.ExecuteJavaScript("javascript:setMode('ImageText', 0)")
这返回一个错误,setMode不能被发现。我放了一条线。在调用此方法之前,在代码中休眠以确保页面已完全加载,这没有什么区别
我尝试通过CSS选择器访问按钮
chromeDriver.FindElement(By.CssSelector("a[href*='ImageText', 0']")).Click()
它找不到选择器而失败
我试着通过classname找到div,然后点击
chromeDriver.FindElement(By.ClassName("bn_diff_image")).Click()
'
但是失败了,说找不到
元素我怎么才能点击这个链接或者在页面上运行那个javascript呢?
请尝试这个css选择器:
div.bn_diff_image a[href^='javascript:setMode']
像这样使用:
chromeDriver.FindElement(By.CssSelector("div.bn_diff_image a[href^='javascript:setMode']")).Click()
没关系,我不擅长这个,元素在iFrame中。一旦我选择了框架,它就起作用了