`

jQuery之 prop() VS. attr()

阅读更多


attr() 用于自定义属性,id ;
prop() 用于原生属性,src,href 等。


---------------------------------------------------------------------------

但是,
如果移除属性,

removeProp() 会使值变为 undefined。
removeAttr() 会完全移除。


---------------------------------------------------------------------------



There are two things to note, here:

the first is that the id is an attribute, not a property.
so attr()/removeAttr() should be used instead.

The second is the the API for removeProp() explicitly note that you should not:

...use this method to remove native properties such as checked, disabled, or selected. This will remove the property completely and, once removed, cannot be added again to element. Use .prop() to set these properties to false instead.
Also, rather than unsetting, and then setting, why not simply change it with attr():


$(elem).attr('id', 'newValue');



http://stackoverflow.com/a/12519842/2893073









分享到:
评论

相关推荐

    jquery-3.1.1.js 、jquery-3.1.1.min.js 【jquery包 js】

    1. **DOM操作**:jQuery提供了一系列简洁的API,如`$(selector)`用于选取元素,`.append()`和`.prepend()`用于插入元素,`.remove()`用于删除元素,以及`.attr()`和`.prop()`用于获取或设置属性等。 2. **事件处理*...

    jquery1.7 API/jquery-1.7.1.min.js/jquery-1.7.1.js

    包括元素的创建与插入(`$(html)`, `.append()`, `.prepend()`),元素的删除(`.remove()`, `.detach()`),以及属性的获取与设置(`.attr()`, `.prop()`)等。 7. **jQuery动画效果**: 动画效果是jQuery的一大亮点,...

    jQuery 3.6.0.zip

    2. **DOM操作**:jQuery封装了一系列方法来操作DOM,如`append()`、`prepend()`用于在元素内部添加内容,`remove()`用于移除元素,`clone()`用于复制元素,以及`attr()`和`prop()`用于获取或设置元素属性。...

    jQuery .prop()属性全选反选

    与`.attr()`方法不同,`.attr()`主要用于处理元素的特性(attributes),而`.prop()`更侧重于元素的状态或行为。例如,当用户勾选一个复选框时,`<input type="checkbox">`的`checked`属性就会被设置为`true`。 在...

    关于jQuery中.attr()和.prop()的问题探讨

    在使用jQuery时,我们经常会用到(attr()和.prop())两种方法来获取和设置元素的属性和属性值。但在某些情况下,这两者的使用可能会让人困惑,尤其是它们在不同浏览器中的表现。这篇文章将探讨jQuery中的.attr()和....

    jQuery-1.7.js

    2. **`.attr()`与`.prop()`分离**:在之前的版本中,`.attr()`既用于获取属性值,也用于设置属性值。但在1.7版本中,`.prop()`被引入,专门用来处理DOM元素的属性,如checked、selected等,而`.attr()`则专注于HTML...

    jQueryAPI-100214.zip_jQueryAPI-100214_javascript

    2. **属性**:描述了jQuery对象和DOM元素上的各种属性,如 `.attr()`, `.data()`, `.prop()` 等。 3. **事件**:涵盖了jQuery支持的所有事件,如 `click()`, `mouseover()`, `mouseout()`, `change()` 等,以及如何...

    jquery_api.mxp

    4. 属性操作:$.attr()和$.removeAttr()用于获取和设置元素的属性,$.prop()则更适用于处理DOM元素的特性。 四、事件处理 jQuery提供了一种统一的方式来处理事件,如$.on()用于绑定事件,$.off()用于解绑事件。...

    jquery-1.6.1.min.zip

    这个版本中,$.attr()和$.prop()被明确区分,前者用于获取或设置元素的特性(attribute),后者用于处理元素的属性(property)。这对于正确处理如checked、selected等特殊属性至关重要。 此外,jQuery的链式调用是...

    jquery1.6中文API.chm

    jQuery的链式操作也是其魅力之一。像`$(this).text('Triggered ajaxComplete handler.')`这样的写法,允许我们在一个选择器后连续调用多个方法,无需创建额外的变量。`$(this)`指的是触发事件的元素,`text()`方法则...

    jQueryAPI-100214.rar

    jQuery的选择器是其强大的核心之一,它们基于CSS选择器,并扩展了一些特有的选择方式。例如,`$("#id")`用于选取ID为指定值的元素,`$(".class")`选取所有具有指定类名的元素,`$("tag")`则选取特定类型的元素。此外...

    jquery及jquery-ui-1.8.16.custom.zip

    jQuery 1.6.4引入了一些重要的改进,例如增加了`.attr()`和`.prop()`方法的区分,`.attr()`主要用于获取或设置HTML属性,而`.prop()`则针对DOM元素的特性。此外,还修复了一些已知的bug,提高了整体性能和兼容性。 ...

    jquery-1.4.2.js

    在jQuery 1.6版本中,引入了`attr`和`prop`方法的区分,`attr`用于获取或设置元素的特性(attribute),而`prop`则用于处理属性(property),这使得处理DOM元素的状态更加精确。 **jQuery核心概念** 1. **选择器*...

    jQuery Notes For Professionals.pdf

    - **选择器的重要性**:选择器是 jQuery 的核心特性之一,它们用于定位页面中的元素。通过使用选择器,可以轻松地访问特定的 HTML 元素,并对它们进行操作。 ##### 2.2 选择器类型 - **基础选择器**:包括 `#id`、...

    jQuery学习之prop和attr的区别示例介绍

    但是,为了适应jQuery 1.6中对`.attr()`和`.prop()`方法的更新,一些在之前版本中通过`.attr()`方法设置的属性需要改用`.prop()`方法来处理,特别是在处理布尔值属性时。 例如,在jQuery 1.6中,使用`.attr()`方法...

    jQuery中文使用手册.rar

    9. **属性操作(Attribute Manipulation)**:`.attr()`, `.removeAttr()`, `.prop()`, `.removeProp()`用于读取、设置或删除元素的属性值,`.data()`, `.removeData()`用于处理自定义数据存储。 10. **集合操作...

    jquery.1.6.2.sdocml&jquery.1.4.2.sdocml

    1.6版本引入了属性选择器的改进,如[data-*]和[attr=value],并引入了attr()和prop()方法的分离,使得数据属性(data attributes)和DOM属性的处理更加清晰。prop()方法用于获取或设置DOM元素的属性,而attr()则主要...

    jquery1.6.2(api+源码)

    在jQuery 1.6, .prop()方法提供了一种明确检索属性值,同时.attr()检索的属性而已。 例如,考虑一个DOM元素的HTML标记中定义的<input type="checkbox" checked="checked" /> ,并假设它是一个JavaScript变量命名的...

    jQuery_API指南.chm

    7. **属性操作(Attributes)**:`attr()`用于获取或设置元素的属性,`prop()`用于处理元素的特性,如`checked`, `selected`等。 8. **尺寸和位置(Dimensions & Position)**:`width()`, `height()`, `offset()`,...

Global site tag (gtag.js) - Google Analytics