標籤:map 條件 index tle alert 文本 它的 str 函數
attr是jQuery的屬性。
1 - - attr(name)
取得第一個匹配元素的屬性值。通過這個方法可以方便地從第一個匹配元素中擷取一個屬性的值。如果元素沒有相應屬性,則返回 undefined
例如:
html:
<div class="pz1z" id="zzzz" >
<span>aaaa</span>
</div>
js:
$(document).ready(function(){
var aa= $("div").attr("class");
alert(aa)
});
列印的結果為div 便簽class屬性的值 pz1z
注意:這種只會擷取第一個匹配的元素 如果兩個div 只能擷取到第一個的屬性值。可以通過選取器加以過濾(pzz)
2 - - attr(properties) 傳回值:jQuery
properties Map
將一個“名/值”形式的對象設定為 《所有匹配元素》 的屬性。
這是一種在所有匹配元素中大量設定很多屬性的最佳方式。 注意,如果你要設定對象的class屬性,你必須使用‘className‘ 作為屬性名稱。或者你可以直接使用.addClass( class ) 和 .removeClass( class ).
html:
<img id="nihao" src="sssss"/>
js:
$("img").attr({src:"woqunimei",id:"buhao"});
注意:會改變所有匹配元素的屬性 如果過濾條件為div 那麼所有的div元素的屬性都將會改變 。同時它的()裡有一對大括弧(pzz)、
3 - - attr(key, value) 傳回值:jQuery
為所有匹配的元素設定一個屬性的值 key value 均為string類型,也就是都是"",""的格式
html:
<img id="nihao" src="sssss"/>
js:
$("img#img1").attr("src","woqunimei");
var aa= $("img#img1").attr("src");
alert(aa)
result:
“woqunimei”(attr(name)只會找到第一個匹配的元素,所有要加過濾的條件)
注意:這種只能單一的改變元素的一個屬性值,如果要改變多個屬性,可以參考attr(properties)函數。同時,它也會改變所有匹配到的元素屬性值(pzz)
4 - -attr(key, function(index, attr)) 傳回值 jQuery
key(class) String function(index, attr) Function
為所有匹配的元素改變一個屬性的值,只不過第二個參數不同於 attr(key, value),不再是一個value string類型的值,而是一個函數
樣本
HTML 程式碼:
<input type="text"/>
//<input type="text"/>
jQuery 代碼:
$("input[type=‘text‘]").attr("value",function(){
return "我是一個菜鳥"
});
//$("img").attr("title", function() { return this.src });
結果:
<img src="test.jpg" value="我是一個菜鳥" /> (頁面載入後,文字框中會出現 “我是一個菜鳥”)
注意:這樣會改變所有匹配到的元素屬性值,如果有兩個文本輸入框,都會受到影響 (pzz)
5 - - removeAttr(name) 傳回值:jQuery
從每一個匹配的元素中刪除一個屬性,
描述:
將文檔中映像的src屬性刪除
HTML 程式碼:
<input type="text"/ value="我是一個菜鳥">
<input type="text"/ value="我不是一個菜鳥">
jQuery 代碼:
$("input").removeAttr("value");;
結果:
兩個文字框中什麼字讀沒有了;
注意:刪除的是所有的匹配元素的一個屬性值,attr首字母大寫。jQuery 1.7以上版本支援一次刪除多個屬性的值$("input").removeAttr("class value");
屬性之間用空格符隔開
jQuery 的attr