【问题标题】:How does one click a button on a webpage using Javascript?如何使用 Javascript 单击网页上的按钮?
【发布时间】:2014-01-11 00:46:44
【问题描述】:

我创建了一个运行以下 JavaScript 函数的 HTML 文件:

    window.location="url";
    document.getElementById('button-id').click();

脚本加载网址中提到的网页。但是,它不响应第二个语句,即点击。我通过 Chrome JavaScript 控制台运行了相同的代码,它运行良好。

【问题讨论】:

标签: javascript


【解决方案1】:

在文档加载完成之前这将不起作用。

它可以从控制台工作,因为文档早就加载了,但是当浏览器执行它时,还为时过早。

试试这个作为概念证明:

<body onload='document.getElementById('clickme').click();'>
<button type='button' id='clickme' onclick='window.location="wherever";'>
</body>

【讨论】:

    【解决方案2】:

    如果你加载一个新的URL,如何找到曾经存在于第一页的元素“button-id”? 如果此元素存在于第二页,请使用 document.onload 或 $(document).ready() 与 jquery 自动执行与您的“单击”操作相关联的操作。

    【讨论】:

      【解决方案3】:

      在触发之前省略window.location。例如,在此页面上,document.getElementById('nav-questions').click() 有效。

      在您的情况下,如果有必要将这些语句一起写入,请使用if 或类似的控制流将这两行分开。应该执行click()时,前面不能有window.location

      例子:

      if (redirect) {
          window.location = url;
      } else {
          document.getElementById('nav-questions').click();
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-12-16
        • 1970-01-01
        • 2015-11-17
        • 1970-01-01
        • 2021-03-11
        • 2014-12-18
        • 2018-01-12
        • 1970-01-01
        相关资源
        最近更新 更多