2012-01-02 122 views
3

我有一个外部test.js与代码文件:与外部JS警报消息文件

$(document).ready(function() { 
    alert("I am an alert box2!"); 
}); 


function show_alert() 
{ 
    alert("hihi"); 
} 

在我的.html,我已经包括test.js,jQuery的文件,并有一个按钮。当点击它时,show_alert()函数将被调用并且工作。但是,消息“我是一个警告框2!”没有被解雇。
此外,如果我把我的.html中的document.ready函数与<script>... </script>。有用。我的代码有什么问题?外部文件不支持?

回答

7

下列之一:

  1. 你已经在你的脑袋的jquery.js之前包括test.js。
  2. 您有一个错误,它在到达就绪函数之前停止您的JavaScript。
+1

你是对的,我在jquery.js之前包含了test.js,thx – red23jordan 2012-01-02 15:00:03

1

您可以在test.js中保留函数testAlert。但是,document.ready应该在脚本标签之间。

function testAlert(){ 
alert("I am an alert box2!"); 
} 

上面的函数可以在test.js中。

$(document).ready(testAlert);应该在当前页面的脚本标记中检查DOM的可用性。

NOTE:事实上,上面是不是强制性的,但写的jQuery理想的方式,因为它有助于轻松地调试:)

2

它为我,

下面的代码:

function show_alert() 
{ 
    alert("hihi"); 
} 

$(document).ready(function() { 
    alert("I am an alert box2!"); 

    $('.button').click(function() { 
     show_alert(); 
    }); 
}); 

认沽jQuery.min.js在HTML代码中的test.js之前。

+0

http://jsfiddle.net/7r8NM/这里测试。 – 2012-01-02 15:08:28