javascript - 检测一个按钮,然后在 JavaScript 中按下它
问题描述
我想制作一个功能来检测网页上的按钮,然后单击它。但我希望它点击一个特定的项目。
function imready()
{
var btn = document.getElementsByClassName('text-xxxs mb-02');
for (var i = 0; i < btn.length; i++)
{
if (btn[i].innerText.indexOf('AK-47') > -1)
{
console.log('runtime');
chrome.runtime.sendMessage({ type: 'dontrun', update: 1 }, function (response) {
});
btn[i].click();
pressok();
}
}
如何使 var "btn" 应该等于 document.getElementsbyClassName('x') 以及不同的 className ('y')?
解决方案
引用自https://stackoverflow.com/a/29366682/10450049
getElementsByClassName()返回一个HTMLcollection 对象,该对象类似于数组,但不是真正的数组,因此您不能使用返回的值调用数组方法。一种技巧是使用 Array 的原型方法以及 .call()/.apply() 将返回的对象作为上下文传递。
var elems = document.getElementsByClassName("royal") ; var collapsedElems = document.getElementsByClassName("collapsed"); var earray = Array.prototype.slice.call(elems, 0); var concatenated = earray.concat.apply(earray, collapsedElems) ; console.log(concatenated)
演示小提琴
推荐阅读
- html-table - DOMPDF 0.8.3 如何拆分长垂直表
- javascript - JS 文件无法在 CPanel 中加载
- recaptcha - 谷歌 reCAPTCHA 响应
- jar - 从命令行运行时,weld-se 无法在类路径的不同 jar 中找到 bean
- random - 线程“主”在“无法初始化 thread_rng:所有熵源失败”时惊慌失措
- php - 树枝模板生成中的路线
- angular - 如何使用 Angular 7 中的键列表查询 Firebase?
- javascript - 如何在 ChartJS 中用点制作虚线粗线?可能吗?
- android - 如何限制从 adb 启动服务?
- html - Bootstrap“img-responsive”在我的代码中不起作用,为什么?