在新版本的jQuery中你最兴奋的是什么?

mar*_*cgg 54 javascript jquery

最新的jQuery版本已经发布,jQuery v1.4.你可以在这里阅读所有相关内容.它允许你做一些非常整洁的东西,如:

$("div.test").bind({
  click: function(){
    $(this).addClass("active");
  },
  mouseenter: function(){
    $(this).addClass("inside");
  },
  mouseleave: function(){
    $(this).removeClass("inside");
  }
});
Run Code Online (Sandbox Code Playgroud)

这个新版本你最喜欢什么?是什么让你"最终!"?


添加了赏金以获得更多反馈并接受答案

Dou*_*ner 58

信不信由你,"最后"的时刻对我而言是delay():

$("#notice").slideDown('500').delay(4000).slideUp('500'); // = Pure awesome :)
Run Code Online (Sandbox Code Playgroud)

  • @DisgruntledGoat,你可以像上面的例子一样在方法链中使用它,这是一个巨大的优势. (6认同)
  • 这确实非常棒 (4认同)
  • 这不仅仅是`setTimeout`的包装吗? (3认同)

Jam*_*mes 44

通过将所有属性作为第二个参数传递给jQuery():以更简洁的方式动态创建元素的能力:

jQuery('<div/>', {
    id: 'foo',
    mouseenter: function() {
        // do stuff
    },
    html: jQuery('<a/>', {
        href: 'http://google.com',
        click: function() {
            // do stuff
        }
    })
});
Run Code Online (Sandbox Code Playgroud)

所有非属性属性都映射到相应的jQuery方法.因此,在html那里将会通过以下方式调用.html()并拥有click绑定新click事件.click()...

  • 在编写原始HTML和在创建后调用元素上的attr()之间,我总是觉得如此疲惫.这好多了:) (3认同)
  • Mathias,关键是通常需要计算属性值.比较:`$('<div id ="'+ calcId()+'"/>')`和`$('<div />',{id:calcId()})` (2认同)

Nat*_*ium 18

我真的不喜欢,这里有15个新功能的概述,对于那些不知道这是什么的人来说:

http://net.tutsplus.com/tutorials/javascript-ajax/jquery-1-4-released-the-15-new-features-you-must-know/


Eri*_*ric 18

我认为最好的功能是允许setter中的函数:

jQuery('li.selected').html(function(i, li) {
   return "<strong>" + li + "</strong>";
});
Run Code Online (Sandbox Code Playgroud)

现在可以删除许多需要$ .each的代码.


Jas*_*vis 17

我是速度狂热者,所以任何提速都始终受到我的欢迎


Jam*_*man 12

对我来说就是这样:

"所有活动都可以是直播活动"

"我们非常自豪能够在live()支持的人群中计算一些附加事件.1.4通过.live()中的事件委托引入了跨浏览器对变更,提交,焦点,焦点,鼠标中心和鼠标保持的支持."

多年来我一直在等待变革事件!

  • `live`函数将事件绑定到"selector",这样如果你创建了与选择器匹配的新元素,它们也会得到事件.以前它只适用于一些事件,如`click`和`mouseover`.现在它几乎适用于所有活动. (2认同)

Dav*_*und 6

那么性能改进当然是我欣赏的东西,但我想我不能说这是一个"终于",因为它是一个不断改进的东西:) DOM构建(快速元素构造)语法看起来非常方便,并且detach方法看起来也非常有用:它允许你暂时从DOM中删除一个对象,但是保留所有处理程序分配给它,这样当重新插入时它将以相同的方式工作.

我想没有那么多我一直缺少的东西,但现在这些新功能已经存在,有一堆我急于开始使用:)