jQuery只是不工作

时间:2013-01-23 12:25:25

标签: javascript jquery html

出于某种原因,我的jQuery脚本只是不想工作,而且它真的非常简单,除了实际的jquery脚本之外我已经把所有东西拿走了,它真的很烦人请帮忙。 谢谢!

 <!doctype html>
<html>

    <head>
        <script src="jquery.js"></script>
        <script>
            $("#click").click(function () {
                alert("works!");
            });
        </script>
    </head>

    <body>
        <a href="#" id="click">Button</a>
    </body>

</html>

P.S。 jQuery JS文件有效。

7 个答案:

答案 0 :(得分:7)

将您的代码更改为此。它确保在将所有HTML元素加载到页面后执行JavaScript:

$(document).ready(function () {
   $("#click").click(function() {
      alert("works!");
   });
});

但是,您应该将脚本标记移动到页面底部,以确保它们不会阻止。这也意味着你实际上并不需要$(document).ready回调。

答案 1 :(得分:4)

您需要将代码包装在

$(function(){
    // your code here which relies on DOM elements
});

否则,您的DOM尚未加载,事件也不会绑定到元素。

答案 2 :(得分:2)

将您的功能包装到$(document).ready()

$(document).ready(function(){
    $("#click").click(function() {
        alert("works!");
    });
});

答案 3 :(得分:1)

document.ready内添加您的代码

$(document).ready(function () {
  $("#click").click(function () {
       alert("works!");
   });
});

或在文档末尾添加代码,如下所示

<body>
   <a href="#" id="click">Button</a>
   // Other elements...
    <script type="text/javascript">
            $("#click").click(function () {
                alert("works!");
            });
    </script>
</body>

答案 4 :(得分:0)

$(document).ready(function(e) {
//TO DO  your code goes here         
}); 

答案 5 :(得分:0)

只需将脚本标记更改为“/ body”标记即可。 这将让浏览器创建DOM并逐个读取脚本! 干杯!

答案 6 :(得分:-1)

试试这个:

$("#click").live("click",function() {
    alert("works!");
});