【问题标题】:Javascript - Auto click on a button on page load [duplicate]Javascript - 在页面加载时自动单击按钮[重复]
【发布时间】:2018-06-19 10:04:16
【问题描述】:

我正在尝试在页面加载时自动单击 ID 为 btn 的按钮。这是我的sn-p。

<button id="btn">Click me</button>
<script>
document.getElementById('btn').click();
    alert("h")
</script>

如何在页面加载时发出警报?请帮忙。谢谢。

【问题讨论】:

    标签: javascript html


    【解决方案1】:

    function test(){
       alert("Hi");
    }
    
    window.onload = function(){
      document.getElementById('btn').click();
      
    var scriptTag = document.createElement("script");
    scriptTag.src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js";
    document.getElementsByTagName("head")[0].appendChild(scriptTag);
    }
    &lt;button id="btn" onclick="test()"&gt;Click me&lt;/button&gt;

    【讨论】:

    • 不幸的是,在这种情况下,警报功能在我的页面加载之前就已经运行了。
    • 将脚本放在页面底部还是包装一个 onload 函数?
    • @ReubenRodriguez 更新了!
    • 谢谢。能否请您告诉我如何在页面加载时触发另一个 js
    • 你的意思是加载 Javascript 吗?
    【解决方案2】:

    嗯,当前的警报在页面加载时发生的,因为您没有将它放在事件回调中。你大概的意思是:

    //wait for DOM ready...
    document.addEventListener('DOMContentLoaded', () => {
    
        //...get the button
        let btn = document.querySelector('#btn');
    
        //...bind the click event
        btn.addEventListener('click', () => { alert('hello'); }, false);
    
        //...trigger the click event on page enter
        btn.click();
    
    }, false);
    

    还要注意文档就绪处理程序,它等待 DOM 准备好。

    【讨论】:

      【解决方案3】:

      如果您想在页面加载时发出警报而不是简单地使用它 -

      window.onload = function(){alert("I am loaded")};

      但是,如果您想在页面加载后也通过单击按钮来发出警报,请使用此 -

      function autoClick(){
        alert("I am loaded and automatically clicked");
      }
      window.onload = function(){
        document.getElementById('autoClickBtn').click();
      }
      &lt;button id="autoClickBtn" onclick="autoClick()"&gt;Click me&lt;/button&gt;

      【讨论】:

        【解决方案4】:

        试试这个:-

           window.onload=function(){
              document.getElementById("btn").click();
              alert('Page Loaded')
            };
            function buttonClick(){
              alert("button was clicked");
             }
        &lt;button id="btn" onclick="buttonClick()"&gt;Click me&lt;/button&gt;

        【讨论】:

        • 单击该按钮不会执行任何操作。
        • 在投票前检查问题:-在页面加载时自动单击 id btn 的按钮。
        • 他的意思是按钮应该触发警报。在您的代码中,按钮什么都不做。
        • 是的,呼叫发生在按钮点击,但自动点击发生,而不是手动发生
        • @Utkanos 回答已更新
        猜你喜欢
        • 1970-01-01
        • 2011-04-10
        • 2014-12-17
        • 2022-01-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-09-09
        相关资源
        最近更新 更多