jQuery设置属性和数据
attr、prop、data方法
<div abc="1" id="div1" class="divs1"></div>
<div abc="2" id="div2" class="divs2"></div>
<div abc="3" id="div3" class="divs3"></div>
<div abc="4" id="div4" class="divs4"></div>
<div abc="5" id="div5" class="divs5"></div>
<input type="checkbox">
<input type="checkbox" checked>
<input type="checkbox">
<input type="checkbox" checked>
<input type="checkbox">
<button>按钮</button>
1、attr 设置标签属性
console.log($("div").attr("abc"));
$("div").attr("abc","1");
$("div").attr("abc",function(index,item){
return "属性"+index;
})
$("div").attr({
a:"1",
b:function(index,item){
return index+1;
},
c:function(index,item){
return "abc"+index;
},
d:function(index){
if(index===0) return null;
return index;
}
})
$("input").attr("checked","checked");
var bool=false;
$("button").on("click",function(){
bool=!bool;
$("input").attr("checked",bool);
})
$("div").removeAttr("abc");
2、prop 设置DOM对象属性
DOM 对象属性
标签属性id===DOM对象属性id
标签属性class===DOM对象属性className
console.log($("div").prop("abc"));
console.log($("div").prop("id"));
console.log($("div").prop("className"));
console.log($("div").className);
$("div").prop("soft","a1");
console.log($("div").prop("soft"));
$("div").prop("abcde",function(index){
return index;
})
console.log($("div").prop("abcde"));
console.log($("div").eq(3).prop("abcde"));
$("div").prop({
a:1,
b:function(index){
return index;
}
});
console.log($("div"));
$("button").on("click",function(){
$("input").prop("checked",function(index,item){
return !item;
})
})
3、data 设置DOM对象的数据
这个属性不是为了改变DOM对象的内容,而是为了存储数据
$("div").css({
width:100,
height:100,
backgroundColor:"red"
})
$("div").data("style",1);
console.log($("div").data("style"));
$("div").abcd=1;
console.log($("div").abcd);
console.log($("div")===$("div"));
var divs=$("div");
divs.abcd=1;
console.log(divs.abcd);