【发布时间】:2017-09-04 00:25:56
【问题描述】:
我一直在尝试创建一个脚本来收藏 etsy 商店中的所有商品
var buttons = document.getElementsByName('favorite-container');
for(var i = 0; i <= buttons.length; i++)
buttons[i].click();
但是,当我尝试在 Chrome 的开发者控制台中运行脚本时出现此错误
“未捕获的类型错误:无法读取未定义的属性‘点击’ 在:3:11"
我认为这应该有效吗?除了进入 selenium 等自动化工具之外,我不知道在我登录的网站上运行 Javascript 的替代方法
回应第一条评论
<div class="favorite-container" data-listing-id="547704515">
<button type="button" class="btn-fave done" data-source="casanova-shop-featured" aria-pressed="true">
<!--icon font and display:none; elements -->
<span aria-hidden="true" class="icon"></span>
<span class="screen-reader-only default">
Favourite
</span>
<span class="screen-reader-only done remove">
Favourited
</span>
<span class="ie-fix"> </span>
</button>
</div>
【问题讨论】:
-
可能是因为没有名称为
favorite-container的元素。 -
您可以在此处使用 getElementsByName,因为您没有在任何地方使用 name 属性。您正在寻找 getElementsByClassName。
-
我已经使用getElementsByClassName并成功选择了页面上的元素
-
但是,它仍然不会让我自动点击它们。会不会有什么东西阻止了点击事件?
标签: javascript google-chrome console etsy