jq第一天(1.83里面的属性)属性-》属性
hide()隱藏顯示的元素, attr設置或返回被選元素的屬性值 removeAttr從每一個匹配的元素中刪除一個屬性 prop獲取在匹配的元素集中的第一個元素的屬性值。 隨著一些內置屬性的DOM元素或window對象,如果試圖將刪除該屬性,瀏覽器可能會產生錯誤。jQuery第一次分配undefined值的屬性,而忽略了瀏覽器生成的任何錯誤 removeProp用來刪除由.prop()方法設置的屬性集 ??
<input type="text" value="t2.jpg"><img src="t1.jpg" class="t1">
返回值:String ?attr(name|properties|key,value|fn)
效果為點擊1圖片換2圖片
?$("img").attr("width")
removeAttr(name)
$(this).removeAttr("src")<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("p").removeAttr("style");
});
});
</script>
</head>
<body>
<h1>這是一個標題</h1>
<p style="font-size:120%;color:red">這是一個段落。</p>
<p>這是另一個段落。</p>
<button>刪除所有 p 元素的 style 屬性</button>
</body>
</html>
prop(name|properties|key,value|fn)
(對于只返回布爾值的用prop,其他用attr)
官方例舉的例子感覺和attr()差不多,也不知道有什么區別,既然有了prop()這個新方法,不可能沒用吧,那什么時候該用attr(),什么時候該用prop()呢
jquery1.6中新加了一個方法prop(),一直沒用過它,官方解釋只有一句話:獲取在匹配的元素集中的第一個元素的屬性值。
大家都知道有的瀏覽器只要寫disabled,checked就可以了,而有的要寫成disabled = "disabled",checked="checked",比如用attr("checked")獲取checkbox的checked屬性時選中的時候可以取到值,值為"checked"但沒選中獲取值就是undefined。
jq提供新的方法“prop”來獲取這些屬性,就是來解決這個問題的,以前我們使用attr獲取checked屬性時返回"checked"和"",現在使用prop方法獲取屬性則統一返回true和false。
那么,什么時候使用attr(),什么時候使用prop()?
1.添加屬性名稱該屬性就會生效應該使用prop();
2.是有true,false兩個屬性使用prop();
3.其他則使用attr();
項目中jquery升級的時候大家要注意這點!
以下是官方建議attr(),prop()的使用:
| accesskey | √ | ? |
| align | √ | ? |
| async | √ | √ |
| autofocus | √ | √ |
| checked | √ | √ |
| class | √ | ? |
| contenteditable | √ | ? |
| draggable | √ | ? |
| href | √ | ? |
| id | √ | ? |
| label | √ | ? |
| location ( i.e. window.location ) | √ | √ |
| multiple | √ | √ |
| readOnly | √ | √ |
| rel | √ | ? |
| selected | √ | √ |
| src | √ | ? |
| tabindex | √ | ? |
| title | √ | ? |
| type | √ | ? |
| width ( if needed over?.width()?) | √ | ? |
removeProp(name)
?
轉載于:https://www.cnblogs.com/lsc-boke/p/5193376.html
總結
以上是生活随笔為你收集整理的jq第一天(1.83里面的属性)属性-》属性的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mongodb-$type、limit、
- 下一篇: Jenkins执行批处理文件失败