仅在元素加载后如何对元素执行操作?

时间:2020-04-08 15:41:11

标签: javascript dom

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

这是我尝试过的:

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

1 个答案:

答案 0 :(得分:0)

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

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