2014-02-26 57 views
0

我必须有单独的javasvript和html文件,我试图打开一个新窗口,当我点击一个链接,但它不工作。
HTML:DOM,javascript,如何使用窗口打开

<!DOCTYPE html> 
<html> 
    <head> 
     <meta charset="UTF-8"> 
     <title>Test</title> 
     <link rel="stylesheet" href=""/> 
     <script type="text/javascript" src="java3.js"></script> 
    </head> 

    <body> 
    <a href="#" id="link">Click!</a> 

    </body> 

</html> 

的Javascript:

var a = document.getElementById("link"); 
a.onclick = function(){ 
window.open("http://www.google.com"); 
}; 

回答

3

如果你打开你可能会看到一个错误信息,如控制台:

TypeError: Cannot set property 'onclick' of null 

这是因为document.getElementById("link")null

为什么它是null?它就在页面上!

嗯,不是当这段代码运行。在定义身体之前,JavaScript代码运行

上移脚本下来,或者在准备/ onload事件包住代码:

window.onload = function() { 
    var a = document.getElementById("link"); 
    a.onclick = function() { 
     window.open("http://www.google.com"); 
    }; 
}; 
+0

+1很好的解释。 –

+0

非常感谢你! – Delal