jQuery操作元素属性

来源:互联网 发布:数据库应用系统软件 编辑:程序博客网 时间:2024/04/30 04:07

<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');

});//防止多次提交

原创粉丝点击