所以我试图通过控制台自动点击Instagram的“隐藏故事”设置中的每个按钮,我尝试了以下代码:
for (let i = 0; i < 300; i++) {
document.getElementsByClassName('wbloks_1')[i]
.addEventListener('click', function (event) {
});
}
不幸的是,这不起作用,任何人都有解决方案?div元素:
<div data-bloks-name="bk.components.Flexbox" class="wbloks_1" style="pointer-events: none; margin-right: 12px; flex-shrink: 0; align-items: center; flex-direction: row; justify-content: flex-end;"><div data-bloks-name="bk.components.Flexbox" class="wbloks_1" style="pointer-events: none;"><div data-bloks-name="bk.components.Flexbox" role="button" aria-label="Toggle checkbox" class="wbloks_1" style="pointer-events: none; display: none;"><div data-bloks-name="ig.components.Icon" class="wbloks_1" style="-webkit-mask-image: url("https://i.instagram.com/static/images/bloks/icons/generated/circle-check__filled__24-4x.png/219f67ac4c95.png"); -webkit-mask-size: contain; background-color: rgb(0, 149, 246); flex-shrink: 0; width: 24px; height: 24px;"></div></div><div data-bloks-name="bk.components.Flexbox" role="button" aria-label="Toggle checkbox" class="wbloks_1" style="pointer-events: none; display: none;"><div data-bloks-name="ig.components.Icon" class="wbloks_1" style="-webkit-mask-image: url("https://i.instagram.com/static/images/bloks/icons/generated/circle-check__filled__24-4x.png/219f67ac4c95.png"); -webkit-mask-size: contain; background-color: rgba(0, 149, 246, 0.3); flex-shrink: 0; width: 24px; height: 24px;"></div></div><div data-bloks-name="bk.components.Flexbox" role="button" aria-label="Toggle checkbox" class="wbloks_1" style="pointer-events: none;"><div data-bloks-name="ig.components.Icon" class="wbloks_1" style="-webkit-mask-image: url("https://i.instagram.com/static/images/bloks/icons/generated/circle__outline__24-4x.png/2f71074dce25.png"); -webkit-mask-size: contain; background-color: rgb(54, 54, 54); flex-shrink: 0; width: 24px; height: 24px;"></div></div></div></div>
3条答案
按热度按时间db2dz4w81#
将所有元素放入一个数组中,并删除第一个元素。单击它,再次调用该函数,直到没有剩余的元素。基本队列。
cclgggtu2#
如果你想添加一个延迟(根据你删除的评论),你可以使用
setTimeout
在一段时间后(以毫秒为单位)调用所有按钮(event delegation)上的函数。为了模拟这种效果,我在这里添加了一个按钮容器,它在单击每个按钮时记录按钮的文本内容。
delayClick
函数接受一个按钮数组(来自查询选择),抓取第一个按钮,单击它,然后在第二次调用该函数后再次调用setTimeout
。当数组中没有按钮时,函数返回。其他文件
cld4siwp3#
谢谢@Andy Delay: