<img id="myImage" src="image.gif" alt="An Image" class="someClass" title="This is an image"/>
标记id、src、alt、class、title表示元素的特性,每个特性都由名称和值所组成。浏览器读取并解释这个元素标记,创建在DOM里表示这个元素的javascript对象。HTML标记由浏览器解释成为表示图像的DOM元素,创建节点列表对象NodeList,并且指派给名为attributes的元素属性。
一、each(iterator)
1.
$('img').each(function(n){
this.alt='This is image['+n+'] with an id of '+this.id;
});
2.可以将特定属性的所有值收集到一个数组里:
var allAlts = new Array();
$('img').each(function(){
allAlts.push(this.alt);
});
3.获取单个元素的属性值:
var altValue = $('#myImage')[0].alt;
二、attr(name)
1.获取指定特性值
var src = $('#myImage').attr('id'); 等价于javascript的:getAttribute('id')
注:这里的特性名称不区分大小写
三、attr(name,value)、attr(attributes)
1.设置特性值
$('*').attr('title',function(index){
return ' i am element ' + index + ' and my name is ' + (this.id ? this.id : 'unset');
});
2.设置多个特性值
$('input').attr(
{ value : '', title : 'please enter a value'}
);
注意:IE浏览器不允许<input>元素的name特性被修改。如果想修改IE浏览器里<input>元素的name特性,就必须用拥有目标名称的新元素取代旧元素。
四、removeAttr(name)
1.删除匹配元素指定的特性
$('p').removeAttr('myAttr');
注意:删除一个特性不会从javascript dom元素删除任何对应的属性,尽管可能导致属性值的改变。例如,从一个元素删除readonly特性,会导致元素的readOnly属性值
从true变为false,但属性本身不会从元素中删除。
五、示例:
1.$('a[href^=http://]').attr('target','_blank');
2.$('form').submit(function(){
$(':submit',this).attr('disabled','disabled');
});//防止多次提交