jquery 不常用但重要的api

1. checkbox 的选中状态

$(" :checkbox").click(function(){
var This = $(this);
if( This.is(":checked") ){
alert( This.val())
}else{
alert('这是没选中状态');
}
})


2. $.map
jquery 中有两个map
map() 函数用于 处理当前jQuery对象匹配的所有元素,并将处理结果封装为新的数组.一般使用get()得到这个数组
简单来说: 就是将一组元素转换为数组(不论是否是元素数组)

var c = $("input:checkbox").map(function(index,ele){
return $(this).val(); //$(this) 永远指的是每一个遍历的对象

})
var arr2 = c.get();
//alert( $.type(arr2) ); // array get()


alert( $.type( $('input').get() ) ); // get()得到的是 Array()

         eq返回的是一个jquery对象   get返回的是一个html 对象数组
返回的是jQuery对象,就可以继续调用其他方法,返回的是html数组就不能调用jQuery的其他方法
jQuery.map() 函数用于 使用指定函数处理数组中的每个元素(或对象的每个属性),并将处理结果封装为新的数组返回

// 1 遍历数组 

var arr = [ "CodePlayer", 15, true ];
var r = $.map(arr,function(value,index){
if( typeof value === 'string'){
return null;
}else{
return value;
}
}) 

// alert(r) 15 true   $.type(r) --> Array

 

// 2 遍历对象
var str = {name:'anikin',age:12}
var s = $.map(str,function(value,key){
// alert(key+':'+value);
})

 

// 3 遍历DOM节点
var d = $.map($("[name='a']:checked"),function(dom,key){
return dom.value;
})
// alert(d);

3:  trigger() 主要针对的是自定义的事件,因为它不同于系统的对象是可以传递参数进去的  
      主动触发,而且还可以传递参数,对于已存在的事件会在触动出发的时候回显示undefined

$('p').bind( 'myEvent',function( event, name, age ){
for(var i=0; i<10; i++){
$('<p>'+name+'<a>::::'+age+'</a></p>').appendTo( $('.wrap') );
}
}).trigger( 'myEvent', ['jack',23412]);

  triggerHandler()跟trigger的区别: 也就是trigger会触发同名的浏览器事件,因此会触发浏览器的默认事件。

* 第一,他不会触发浏览器默认事件。

* 第二,只触发jQuery对象集合中第一个元素的事件处理函数。

* 第三,这个方法的返回的是事件处理函数的返回值,而不是据有可链性的jQuery对象。此外,如果最开始的jQuery对象集合为空,则这个方法返回 undefined 。

4. jquery.proxy(fn,context)  是jquery中的applay 的实现,修改的是作用域。

var t = 3;
$('#a').click(function(){
setInterval( $.proxy( function(){
if(t == 0){
t = 'done';
}else{
t--;
}
$(this).html(t);
} ,$(this)), 1000);
})

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值