【问题标题】:Tab through a webpage manually手动浏览网页
【发布时间】:2016-12-30 14:49:33
【问题描述】:

我正在尝试仅使用键盘浏览网页。通过使用我的 Tab 键,我可以在多个输入框中输入数据,然后按几个提交按钮。

但是,我在尝试将焦点设置到页面上的图像元素时遇到了问题。由于某种原因,它不允许我用 tab 键选择它。我可以用鼠标单击它,然后会出现一个弹出窗口,但这确实会降低效率。

我曾考虑在 VBA 中创建一个脚本来执行此操作,但现在我更喜欢快速修复,而无需花费数小时开发宏。

注意:我很快尝试将引用分配给<img> 元素并在VBA 中使用ClickFocus 方法,但这不起作用。我没有收到错误,代码运行正常,但网页上没有任何反应。这使我认为这将是一个比看起来更大的项目,因此我不愿意走这条路。

我做了一些研究,似乎<img> 元素不支持tabindex。这是否意味着我试图用键盘完成的事情是不可能的?代码是我唯一的选择吗?

如果有人知道任何对 VBA 有帮助的事情,我会考虑你的建议。

很遗憾,该网页受密码保护,并且是公司帐户,因此我无法发布。

在我的Chrome 浏览器中右键单击检查元素后,我看到的是:

<img alt="View Quantities At Other Locations" src="/WebOrder/Images/CheckQtys.gif" 
 title="View Quantities At Other Locations" class="popup"popupdirection="upperleft" 
 popupwidth="380" popupcontent="#ProductQuantitiesForAccessibleBranches" 
 onbeforepopupcreate="onBeforePopupCreate_GetProductQuantitiesForAccessibleBranches(this)" 
 popupajaxformid="GetProductQuantitiesForAccessibleBranches" 
 onbeforepopupajaxpost="onBeforePopupAjaxPost_GetProductQuantitiesForAccessibleBranches(this)" 
 oncompletepopupajaxpost="onCompletePopupAjaxPost_GetProductQuantitiesForAccessibleBranches(this)" 
 productguid="00000000-0000-0000-0000-000000058927" displayitem="732899500" 
 brandguid="00000000-0000-0000-0000-000000000000" brandname="" brandsku=""> 

有没有人知道如何将焦点设置在这个元素上(使用键盘或 VBA)?

【问题讨论】:

  • 试试ie.document.getElementsByTagName("img")(0).focus,其中0是网站上Img标签的索引。
  • 嗯,很有趣。在发布这个问题之前,我尝试了.getElementsByClassName。现在我也尝试了你的方法,但它也不起作用。感谢您的尝试。
  • @RyanWildry 你认为我需要在点击之前触发一些 javascript 事件吗?问题是我的本地窗口中的所有属性都是Null,所以我什至不知道该尝试哪个...
  • 你能发布网站的网址吗?请记住,您可能需要从 0 更改索引,因为它可能不是集合中的第一项。
  • 不幸的是我不能。商品编号没有问题。我对所有项目编号运行了一个 for 循环,所以我 100% 确定。

标签: html vba excel web-scraping browser-automation


【解决方案1】:

您可以使用&lt;div tabindex=0&gt; Stuff Here &lt;/div&gt; 将注意力集中在一个 div 上。将图像放在 div 内并使用 div 对其进行操作。

【讨论】:

  • 我希望可以。在我输入我的问题之前,我实际上在这里看到了类似的东西。该公司在网站上有一个帐户,但不拥有该网站。因此我无法更改任何 HTML 代码。不过还是谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-12-28
  • 1970-01-01
  • 1970-01-01
  • 2017-08-09
  • 2011-03-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多