W3学校的例子没有用?

时间:2016-05-27 02:06:28

标签: javascript jquery html

我试图通过W3学校弄清楚这个例子,但据我所知,它不起作用。如果我错过了某些东西,有人可以引导我吗?

<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $("#div1").on("click", function(){
        $(this).css("background-color", "pink");
    });
    $("#div2").live("click", function(){
        $(this).css("background-color", "pink");
    });
});
</script>
</head>
<body>

<h4 style="color:green;">This example demonstrates how to achieve the same effect using on() and live().</h4>

<div id="div1" style="border:1px solid black;">This is some text.
  <p>Click to set background color using the <b>on() method</b>.</p>
</div><br>

<div id="div2" style="border:1px solid black;">This is some text.
  <p>Click to set background color using the <b>live() method</b>.</p>
</div>

</body>
</html>

小提琴:https://jsfiddle.net/gratiafide/dwmwm43a/

来源:http://www.w3schools.com/jquery/tryit.asp?filename=tryjquery_event_on_live

5 个答案:

答案 0 :(得分:4)

这是因为版本1.7中已弃用jQuery.fn.live(..);并在版本1.9中已完全删除。

您正在使用jQuery 1.12.2,此版本的jQuery中的方法jQuery.fn.live(...); 不存在

要让jQuery.fn.live(...);工作,您必须将script元素更改为:

<script type="text/javascript" src="https://code.jquery.com/jquery-1.7.min.js"></script>

如果您想使用最新版本的jQuery,请改用:

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="https://code.jquery.com/jquery-1.12.2.min.js"></script>
<script>
  $(document).ready(function() {
    $("#div1").on("click", function() {
      $(this).css("background-color", "pink");
    });
  });
</script>
</head>
<body>
  <div id="div1" style="border:1px solid black;">
    Hello World!
    <p>Click me to make me pink!</p>
  </div>
</body>
</html>

答案 1 :(得分:2)

从jQuery 1.7开始,不推荐使用.live()方法。

你的小提琴你正在使用v1.12.2

与w3c相同:

src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js">

所以将src更改为:

src="https://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"

并且有效

http://api.jquery.com/live/

答案 2 :(得分:2)

不再推荐使用.live()方法,因为更高版本的jQuery提供了更好的方法,没有它的缺点。

来源:http://api.jquery.com/live/

答案 3 :(得分:0)

请注意:您的示例不是来自W3C(请参阅您提供的标题)。你引用w3schools并在stackoverflow上查看其他问题,你会发现w3c和w3school之间没有联系(前两个字符除外)。

答案 4 :(得分:-1)

还请确保您在w3schools浏览器支持中查看它是否可以正常工作