一、jquery V1.4.3新方法测试

1、jQuery.isWindow

这个方法用来判断对象是否是一个window。

来看个例子:

$('#demo-1').click(function(){
    alert($.isWindow(window));
})
 

是不是感觉这个方法很多此一举?在web浏览器,通常我们不会去特意测试window对象。

2、jQuery.type()

相对于isWindow,type方法非常好用,jQuery.type()用于专门判断数据类型,判断的正确性高于直接使用typeof,typeof无法直接区分object和array,你甚至可以用jQuery.type()来判断是不是正则对象。

jQuery.type(true) === "boolean"
jQuery.type(3) === "number"
jQuery.type("test") === "string"
jQuery.type(function(){}) === "function"
jQuery.type([]) === "array"
jQuery.type(new Date()) === "date"
jQuery.type(/test/) === "regexp")
 

3、jQuery.fx.interval

jQuery.fx.interval是一个属性,不是方法,用于设置动画一帧的秒数,默认为11毫秒,设置得越低,动画就越顺滑,当然cpu资源就消耗越大。

jQuery.fx.interval = 80;

$("#demo-2").click(function(){
  $("#demo-2-div").toggle( 3000 );
});
 

可以明显感觉到动画变的非常不流畅,这是因为将jQuery.fx.interval设置过高的缘故。

4、event.namespace

这是event新的一个属性,用于返回事件的命名空间(假如该事件有命名空间)

$("#test-p").bind("test.ria", function(event) {
  alert( event.namespace );
});
$("#demo-3").click(function(event) {
  $("#test-p").trigger("test.ria");
}); 
 

二、jquery V1.4.3的方法改进

1、事件方法的改进

当bind/unbind第二个参数为逻辑类型时,用于直接判断是否阻止浏览器事件默认动作和冒泡。

猛击这里

 	$("#demo-4").bind('click',false)
 

这个改进还是非常实用的,可以看到链接不再触发跳转。

事件的第二个改进在于事件方法(比如click)的第一个参数可以为一个对象,click的第二个参数监听函数可以取到该对象的值。

$("#demo-5").click({'36ria':'明河共影'},function(evt){
    alert(evt.data['36ria']);
})
 

2、所有的动画方法支持缓动

$("#demo-6").click(function(){
  $("#demo-6-div").toggle('slow','easeOutBounce');
});
 
使用easing(缓动)请先引入easing插件。