JSLite - 節點屬性


如有疑問歡迎到這些地方交流,歡迎加入JSLite.io組織團體共同開發!

pluck

取得物件集合中每個元素的屬性值。

$("#box").pluck("nodeName") //⇒ ["DIV"]
$("#box").pluck("nextElementSibling") //⇒ <div class="boxs">1234567890</div>
$("#box").pluck("children") //⇒ [HTMLCollection[4]]

attr

讀取或設定dom的屬性。

$(".button").attr({"class":"","style":"background:red"}) //⇒ self 设置红色清空class
$(".button").attr("class","name")  //⇒ self 设置class替换之前的
$(".button").attr("class")  //⇒ string 获取class属性值

removeAttr

移動目前物件集合中所有元素的指定屬性。

$("#box").removeAttr("class") //⇒ self 移除class

prop

讀取或設定dom的屬性。它在讀取屬性值的情況下優先於 attr,因為這些屬性值會因為使用者的互動而改變,如 checkedselected

<input class="taiyang" id="check1" type="checkbox" checked="checked">
<input class="yaotaiyang" id="check2" type="checkbox">
$("#check1").attr("checked"); //=> "checked"
$("#check1").prop("checked"); //=> "true"
$("#check2").attr("checked"); //=> "false"
$("#check2").prop("checked"); //=> "false"
$("input[type="checkbox"]").prop("type",function(index,oldvalue){
console.log(index+"|"+oldvalue);
});
//=> 0|checkbox
//=> 1|checkbox
$("input[type="checkbox"]").prop("className",function(index,oldvalue){
console.log(index+"|"+oldvalue);
});
//=> 0|taiyang
//=> 1|yaotaiyang

removeProp

為集合中符合的元素刪除一個屬性(property)。 removeProp() 方法用來刪除由.prop()方法設定的屬性集。

注意: 不要使用此方法來刪除原生的屬性( property ),例如checked, disabled, 或 selected。這將完全移除該屬性,一旦移除,不能再次被添加到元素上。使用.prop()來設定這些屬性設定為false代替。

<p id="n2" class="demo test" data-key="UUID" data_value="1235456465">CodePlayer</p>

var $n2 = $("#n2");
$n2.prop("prop_a", "CodePlayer");
$n2.prop("prop_b", { name: "CodePlayer", age: 20 } );

console.log($n2.prop("prop_a")) //⇒ CodePlayer
console.log($n2.prop("prop_b")) //⇒ Object {name: "CodePlayer", age: 20}

$n2.removeProp("data-key");
$n2.prop("data-key") //⇒ undefined
$n2.attr("data-key") //⇒ "UUID"