2015-11-28 25 views
1

我有2个按钮,我想先点击“Button1”,并在5秒后。 “Button2” 以及10秒后。重定向到另一个网址。按钮,超时,警报未捕获类型错误:

document.getElementById('Button1').click(); 
alert("After clicking Button1"); 
setTimeout(function(){ 
document.getElementById('Button2').click(); 
}, 5000); 
alert("After clicking Button2"); 
setTimeout(function(){ 
window.location.href="http://google.com"; 
}, 10000); 

我得到

Uncaught TypeError: Cannot read property 'click' of null.

按钮正常工作,并单击但重定向代码不会。奇怪的是我使用警报来检查代码,它首先运行警报,然后点击“Button1”,然后“Button2”之后,我得到错误,它不会继续执行最后一个代码。我不知道该怎么办..

+0

'Button2'不存在 – adeneo

+0

@约翰以上的价格哪条线出现在错误? – Kayla

回答

1

我认为你的第二条警告声明是错误的。 试试这个:

document.getElementById('Button1').click(); 
alert("After clicking Button1"); 

// wait 5 seconds 
setTimeout(function(){ 
    document.getElementById('Button2').click(); 
    alert("After clicking Button2"); 

    // wait 10 seconds 
    setTimeout(function(){ 
     window.location.href="http://google.com"; 
    }, 10000); 
}, 5000); 

确保Button2的存在,因为你所得到的错误表明事实并非如此。 你的HTML应该是这个样子:

<button id="Button1">this is button 1</button> 
<button id="Button2">this is button 2</button> 
+0

按钮存在cuz后,我点击第二个按钮,它为用户获取用户插槽。 –

+0

尝试重构你的代码(通过嵌套setTimeouts像我一样),看看是否改变了事情 –