2014-09-26 51 views
-1

以下是一个简单的代码,它显示一个超链接并点击它,一个警告框应该是可见的。但我没看到它。这可能是什么原因呢?我怀疑脚本本身没有被调用。我哪里错了?为什么事件监听器没有被调用?

HTML:

<html> 
<head> 
    <title></title> 
</head> 
<body> 
    <a href='#' id='sign-up-link'>Sign up</a> 
    <!-- scripts --> 
    <script href='jquery-2.1.1.js'></script> 
    <script href='script.js'></script> 
</body> 

的script.js:

$(document).ready(function() { 
    alert('Into the ready function'); 
    $('#sign-up-link').click(function(event) { 
     event.preventDefault(); 
     alert('Hey !!'); 
     /*$('#sign-up-pop-up').style('display','block'); 
     $('#sign-up-pop-up').style('top','500px'); 
     $('$sign-up-pop-up').addClass('animated zoomIn');*/ 
    }); 
}); 
+0

您的“进入就绪功能”警报显示在page_load上吗? – 2014-09-26 17:42:47

+0

代码运行得很好,因为您可以在此代码的此jsfiddle版本中看到:http://jsfiddle.net/dp9qyfn4/,因此可能是您的页面上有其他错误。 – radiovisual 2014-09-26 17:43:06

+0

检查您的控制台日志中的JavaScript错误。如果你的jQuery脚本路径错误,'$'会产生一个错误,因为$是一个jQuery别名。 – 2014-09-26 17:44:10

回答

3

变化:

<script href='jquery-2.1.1.js' /> 
<script href='script.js' /> 

到:

<script src='jquery-2.1.1.js'></script> 
<script src='script.js'></script> 

你把href代替src,也缺少脚本结束标记</script>

4

,您应该使用src属性,而不是hrefscript元素。

+0

我改变了,但结果相同。我也用'src'编辑了这个问题。 – saplingPro 2014-09-26 17:42:04

+1

另外,把你的外部脚本引用放在head部分,使得你的代码更加有组织。 – 2014-09-26 17:42:08

+0

@saplingPro修复有问题的问题(将'href'改为'src')使得答案看起来很奇怪......不要在将来做这样的事情。 – Regent 2014-09-26 17:48:29

3
<script src="//yourJavaSCriptFile.js"></script> 

你必须有两个:

<script> 
</script>