javascript - 如何通过浏览器控制台以编程方式单击按钮 [内部代码]

标签 javascript html

出于某种原因,我可以点击某些链接/按钮,但不能点击按钮/任何具有 onclick 属性的东西。 例如: 我输入浏览器控制台的 JavaScript 代码:

var o = document.getElementsByName("takepic"); 
for (var i = 0; i < 1000; i++){
    o.click();
    console.log(i);
}

我放置了 console.log,这样我就知道浏览器在做什么,以及它当前所在的位置。

页面上的html代码:

<form>
    <input type="button" value="Configure..." onclick="webcam.configure()">
    &nbsp;&nbsp;
    <input type="button" value="Take Snapshot" onclick="take_snapshot()" name="takepic">
</form>

所以基本上,我想使用浏览器控制台快速拍摄快照,但是当我输入我的代码时,出现此错误:

TypeError: Object # has no method 'click'

当我确实使用相同的代码时,比如在 facebook 上重新添加 friend ,我使用这个:

var o = document.getElementsByName("fbaddfriend_example"); 
for (var i = 0; i < o.length; i++){
    o[i].click(); 
    console.log(i);
}

绝对有效。 我只是想对页面上的按钮执行相同的操作,但无济于事。

最佳答案

您的问题出在您在控制台中输入的代码中。您正在使用 document.getElementsByName(),它将返回一个元素数组。您需要遍历这些元素。您在第二个代码段而不是第一个代码段中执行此操作。

var o = document.getElementsByName("takepic"); 
for (var j = 0; j < o.length; j++) {
    for (var i = 0; i < 1000; i++){
        o[j].click();
        console.log(i);
    }
}

关于javascript - 如何通过浏览器控制台以编程方式单击按钮 [内部代码],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21972461/

相关文章:

javascript - Angular 2+ 检查内容是否与父容器重叠

用于值之间双向关系的 JavaScript 框架/库

javascript - 拖放认识 child .length

javascript - Webpack 2.4.1 中的无效配置对象错误

javascript - href 中的函数返回 false

javascript - 允许点击但禁用链接

javascript - 最后一步排序错误。函数获取颜色

javascript - JQuery 创建新的选择选项

javascript - 设置动画速度 - ChartJS?

javascript - 未捕获的语法错误 : Unexpected token ILLEGAL in javascript