javascript - VB.Net - Selenium 在我要运行的页面上找不到 javascript 函数
问题描述
我正在尝试使一些自动化软件使 Chrome 自动化。我可以导航到该页面,并且该页面在代码中声明了一个按钮,如下所示:
<div class="bn_diff_image">
<a href="javascript:setMode('ImageText', 0);"></a>
</div>
该类显示按钮的图像。我需要单击该按钮(执行 javascript),但我无法让它工作。这是我尝试过的代码:
chromeDriver.ExecuteJavaScript("javascript:setMode('ImageText', 0)")
这将返回一个找不到 setMode 的错误。我在代码中放了一个 Thread.Sleep 以确保在调用它之前页面已完全加载,它没有区别
我尝试通过 CSS 选择器访问按钮
chromeDriver.FindElement(By.CssSelector("a[href*=\'ImageText', 0']")).Click()
它找不到选择器并失败
我尝试按类名查找 div 并单击它
chromeDriver.FindElement(By.ClassName("bn_diff_image")).Click()
'
但它没有说它找不到元素
我到底怎么能点击这个链接或在页面上运行那个 javacript?
解决方案
没关系,我不擅长这个,元素在 iFrame 中。一旦我选择了框架,它就起作用了
推荐阅读
- excel - 如何在excel中减去这个时间
- php - 在 PHP 中调整和保存 jpg、png 和 gif
- javascript - 我想从 firbase 实时数据库中导出 PDF 文件中的数据。我在按钮单击时得到空白的 pdf 文件
- javascript - 如何使用 asp.net 核心从一个视图通过另一个视图获取内容?
- .net - 从其他 winForm 调用用户控件的方法
- chatbot - Messenger - 聊天机器人,无需为每个页面创建 FB 应用程序
- windows - 使用 PowerShell 提升当前目录的权限
- sql - SQL数据库如何在插入之前链接主键和外键
- javascript - 如何在 Next.js 的 `getServerSideProps` 方法中使用 cookie?
- java - java 8 forEach 关闭流时的奇怪行为