1

需要更新版本的帮助,这不适用于 jQuery 1.9

$(function(){
  $(".img-swap").live('click', function() {
    if ($(this).attr("class") == "img-swap") {
      this.src = this.src.replace("_off","_on");
    } else {
      this.src = this.src.replace("_on","_off");
    }
    $(this).toggleClass("on");
  });
});
4

2 回答 2

1

Live我相信是贬值了。改为使用on。页面顶部附近的 jQuery 文档中清楚地说明了这一点live。根据我的经验,如果从 Google 中提取,不要使用最新的 jquery,而是选择一个版本并坚持下去,这总是一个好主意。否则,当 jQuery 更新时,您的代码可能会在没有警告的情况下中断。经验之谈。

于 2013-03-01T23:33:49.817 回答
0

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

.live 方法已在 jQuery 版本 1.9 中删除。改用 .on() 将元素绑定到事件。您的代码如下所示:

$(function(){
  $(".img-swap").on('click', function() {
    if ($(this).attr("class") == "img-swap") {
      this.src = this.src.replace("_off","_on");
    } else {
      this.src = this.src.replace("_on","_off");
    }
    $(this).toggleClass("on");
  });
});
于 2013-03-01T23:34:39.987 回答