【2016-9.9】
$.proxy()
金典案例
map() 将一组元素转为数组,不管是不是数组
金典案例 一般是配合get()来使用的,因为map()自身返回的不是单纯的匹配元素的数组。
官方解释只有一句话: 获取在匹配的元素集中的第一个元素的属性值。
有时候checkbox,我们不写checked或者checked="checked"的时候,使用attr()会获得undefined,但是使用prop()的时候会直接返回true或者false。而attr是直接返回的checked。
$.proxy()
金典案例
get() --返回的是一个数组 ,因此常使用的get[0]是html对象 eq(0) 才是jquery对象var t = 10;
var timer = null;
$('#a').click(function(){
clearInterval( timer );
timer = setInterval( $.proxy( function(){
if(t == 0){
t = 'done';
}else{
t--;
}
$(this).html(t);
} ,$(this)), 1000);
})
map() 将一组元素转为数组,不管是不是数组
金典案例 一般是配合get()来使用的,因为map()自身返回的不是单纯的匹配元素的数组。
prop() 使用 常用在selected checked readOnly autofocus 等属性中,不同于attr()var x = $("input[type='checkbox']").map(function(){
return $(this).val();
}).get().reverse();
官方解释只有一句话: 获取在匹配的元素集中的第一个元素的属性值。
有时候checkbox,我们不写checked或者checked="checked"的时候,使用attr()会获得undefined,但是使用prop()的时候会直接返回true或者false。而attr是直接返回的checked。
1.但是自己亲测不一定是第一个元素。
// 设置页面中的所有checkbox为disabled false
$("input[type='checkbox']").prop({
disabled: true
});
2. 通过函数来设置所有页面上的复选框被选中。
$("input[type='checkbox']").prop("checked", function( i, val ) { return !val; });
3.这句话是设置页面上的所有checkbox为不可点击的状态
$("input[type='checkbox']").prop("disabled", true);
综上所属,prop()的重点是第一个属性值,而不是第一个匹配元素