Jquery - > Document.Ready - >不开火

时间:2014-05-09 04:49:13

标签: jquery document-ready

我正在运行Mac OS 10.6,Chrome 34和jQuery 2.1.1。 我有这个简单的代码来自TutsPlus '30天学习jQuery'。 我声称jQuery中存在一个错误。 或者......你告诉我! ;)

这不起作用:

<html>
 <head>
  <title> Does not work </title>
  <script type="text/javascript" src="jquery-2.1.1.js"></script>  //script is in root
  <style>
   .emphasis{font-weight: bold;}
  </style>

  <script>
    $(document).ready(function()){$('li:first-child').addClass('emphasis');});
  </script>

 </head>
 <body>
  <ul>
   <li>Hello</li>
   <li>Hello 2</li>
   <li>Hello 3</li>
  </ul>
 </body>
</html>

这有效:

<html>
 <head>
  <title> </title>
  <script type="text/javascript" src="jquery-2.1.1.js"></script>
  <style>
  .emphasis{font-weight: bold;}
  </style>


  </head>
 <body>

 <ul>
  <li>Hello</li>
  <li>Hello 2</li>
  <li>Hello 3</li>
 </ul>

  <script>
   $('li:first-child').addClass('emphasis');
  </script>

 </body>
</html>

4 个答案:

答案 0 :(得分:2)

尝试删除该附加括号,

$(document).ready(function()){$('li:first-child').addClass('emphasis');});
//--------------------------^

有效代码:

$(document).ready(function() {
  $('li:first-child').addClass('emphasis');
});

答案 1 :(得分:2)

您错误地立即关闭了文档就绪功能。你关闭了额外的一个封闭的括号,说明为什么它不起作用

$(document).ready(function() { 
             $('li:first-child').addClass('emphasis');
});

答案 2 :(得分:1)

更改以下行

<script>
    $(document).ready(function()){$('li:first-child').addClass('emphasis');});
</script>

to(因为你在)之后还有一个function()

<script>
    $(document).ready(function(){
       $('li:first-child').addClass('emphasis');
    });
</script>

答案 3 :(得分:0)

您必须删除另外添加的关闭括号。

$(document).ready(function(){
 $('li:first-child').addClass('emphasis');
});