首页 > 解决方案 > 如何仅在加载元素时对其执行操作?

问题描述

我正在尝试编写一个脚本来模拟点击页面上的某个按钮。我尝试使用window.onload但它不起作用。在我看来,问题在于当我的脚本开始执行时,我想要与之交互的元素还不存在。我怎样才能做到这一点?

这是我尝试过的:

window.onload = function() {
    document.getElementsByTagName('story')[0].onload = function() {
        document.getElementsByTagName('story')[0].click();
    };
};

标签: javascriptdom

解决方案


设置click()在使用的递归函数中setTimeout()

window.onload = function() {
    function findButton(){
        setTimeout(function(){
           let btn = document.getElementsByTagName('story')[0]
           if(!btn){
              findButton()
           }else{
              btn.click()
           }
        }, 300)
    }
    
    findButton()
}


推荐阅读