.removeProp()
返回: jQuery
.removeProp( propertyName )
描述:针对匹配的元素集合,删除一个属性。
.removeProp()
方法用来删除先前使用.prop()
方法设置的属性。
对于很多DOM元素或window
对象内建的属性,如果度图删除这些属性,浏览器可能生成一个错误。浏览器先会假定这个属性值是undefined,然后忽略任何浏览器生成的错误。总的来说,它只能用来删除设置在一个元素上的自定义属性,不能删除内建(原生)属性。
注意:不要用这个方法来删除自然属性,比如说“checked”、“disabled”或“selected”。这将完全删除属性,一旦被删除,就不能加回元素了。请改用.prop()
方法来把这些属性设置为false。
其它说明
- 在Internet Explorer 9以及以前的版本中,使用
.prop()
把一个DOM元素属性设置成除了简单的原始值(数字、字符串或布尔值)之外的值,如果这个属性之前没有删除(在该DOM节点从document上删除掉之前,使用.removeProp()
)可能导致内存泄漏。要想安全地在DOM上设置值,而不造成内存泄漏,请使用.data()
。
示例
在一个段落文本上设置一个数字属性,然后删除它。
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>removeProp demo</title> <style> img { padding: 10px; } div { color: red; font-size: 24px; } </style> <script src="https://code.jquery.com/jquery-1.10.2.js"></script> </head> <body> <p></p> <script> para = $( "p" ); para .prop( "luggageCode", 1234 ) .append( "The secret luggage code is: ", String( para.prop( "luggageCode" ) ), ". " ) .removeProp( "luggageCode" ) .append( "Now the secret luggage code is: ", String( para.prop( "luggageCode" ) ), ". " ); </script> </body> </html>
演示结果