js抢购脚本——利用document子节点稳定获取无id、name属性的a元素

本文介绍了在JavaScript中如何应对动态变化的网页元素,特别是针对秒杀抢购场景。作者分享了如何通过稳定获取元素,如使用`getElementById`和`firstChild`来定位即使属性变化的抢购按钮,并模拟点击操作。这种方法能够适应抢购按钮属性刷新的情况,确保脚本的稳定性。
摘要由CSDN通过智能技术生成

js中常见的获取元素的方法:
1、document.getElementById(“id属性的值”);
2、document.getElementsByTagName(“标签的名字”);
3、document.getElementsByName(“name属性的值”);
4、document.getElementsByClassName(“类样式的名字”);
笔者在写秒杀抢购js脚本过程中遇到一个问题,如今许多网站会将“立即抢购"按钮的id属性、name属性等隐藏起来,如下图例子(某购物网站的源代码中关于抢购按钮部分):
在这里插入图片描述

在这里插入图片描述
笔者想过利用a元素的class属性来获取a元素,准备利用如下代码来模拟人点击抢购按钮:

document.getElementsByClassName("product-button02 disabled")[0].click();

但是经过查阅资料,当抢购时间刷新,a元素的class属性可能会变化
所以为了在抢购按钮刷新后模拟人工点击抢购按钮,首先获取按钮所在div元素,通过document.firstChild 可以访问第一个子节点

var D=document.getElementById("pro-operation");
var A=D.firstChild;
A.click();

这样,即使抢购时间到了,按钮属性,也可以通过document稳定捕捉按钮,并通过js模拟人点击抢购按钮。
欢迎对抢购脚本感兴趣的小伙伴留言交流。
写得不对的地方也请各位小伙伴提出指正意见。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值