attr用来获取属性,prop获取特性
Jquery1.6之后,可以通过attr方法去获得属性,通过prop方法去获得特性
属性指的是“name,id”等等,特性指的是“selectedIndex, tagName, nodeName”
jquery判断checked的三种方法:
.attr('checked'): //看版本1.5-返回:true或false
.prop('checked'): //16+:true/false
.is(':checked'): //所有版本:true/false//别忘记冒号哦
jquery中用attr()方法来获取和设置元素属性,attr是attribute(属性)的缩写,在jQuery DOM操作中会经常用到attr(),attr()有4个表达式。
1. attr(属性名) //获取属性的值(取得第一个匹配元素的属性值。通过这个方法可以方便地从第一个匹配元素中获取一个属性的值。如果元素没有相应属性,则返回 undefined )
2. attr(属性名, 属性值) //设置属性的值 (为所有匹配的元素设置一个属性值。)
3. attr(属性名,函数值) //设置属性的函数值 (为所有匹配的元素设置一个计算的属性值。不提供值,而是提供一个函数,由这个函数计算的值作为属性值。)
4. attr(properties) //给指定元素设置多个属性值,即:{属性名一: “属性值一” , 属性名二: “属性值二” , … … }。(这是一种在所有匹配元素中批量设置很多属性的最佳方式。 注意,如果你要设置对象的class属性,你必须使用’className’ 作为属性名。或者你可以直接使用’class’或者’id’。)
实例:
- 改变图像的 width 属性:
$("button").click(function(){
$("img").attr("width","180");
});
- attr() 方法设置或返回被选元素的属性值。
$(selector).attr(attribute);
- 设置被选元素的属性和值。
$(selector).attr(attribute,value);
- 使用函数来设置属性/值
$(selector).attr(attribute,function(index,oldvalue));
参数 | 描述 |
---|---|
attribute | 规定属性名称 |
function(index,oldvalue) | 该函数可接收并使用选择器的 index 值和当前属性值。 |
- 设置多个属性/值对
$(selector).attr({attribute:value, attribute:value ...});
jQuery 属性选择器
jQuery 使用 XPath 表达式来选择带有给定属性的元素。
$("[href]")// 选取所有带有 href 属性的元素。
$("[href='#']") //选取所有带有 href 值等于 "#" 的元素。
$("[href!='#']") //选取所有带有 href 值不等于 "#" 的元素。
$("[href$='.jpg']") //选取所有 href 值以 ".jpg" 结尾的元素。
反选函数应用实例
//反选
function check(){
$("#all2").attr("checked",$(this).attr("checked"));
$("input[name='item']").each(function(){
$(this).attr("checked",!$(this).attr("checked"));
});
allcheck();
}
检查全选函数应用实例
function allcheck(){
var chknum = $("input[name='item']").size();
var chk = 0;
$("input[name='item']").each(function(){
if($(this).attr("checked")==true){
chk++;
}
});
if(chknum==chk){
//全选
$("#all1").attr("checked",true);
}else{
//不全选
$("#all1").attr("checked",false);
}
}
获取属性用attr()!!!!