在jQuery中,對元素的操作包括3個方面:
這一章我們主要講解jQuery對元素屬性操作和內容操作。由於樣式操作內容比較多,因此我們獨立成一章(即下一章),以便大家有一個清晰的學習思路。
在jQuery中,關於元素屬性的操作共有3種:
下面我們一一詳細介紹這3種元素屬性的操作。
語法:
$().attr("屬性名")
舉例:
在線測試<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <script src="jquery-1.12.0.min.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $("#btn_src").click(function () { alert($("img").attr("src")); }); $("#btn_alt").click(function () { alert($("img").attr("alt")); }); }) </script> </head> <body> <img src="jquery.png" alt="jquery標志"/><br /> <input id="btn_src" type="button" value="獲取src屬性"/> <input id="btn_alt" type="button" value="獲取alt屬性"/> </body> </html>
在浏覽器預覽效果如下:
分析:
這裡我們使用attr()方法獲取img元素的src和alt這兩個屬性值。
語法:
$().attr("屬性","屬性值")
舉例:
在線測試<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <script type="text/javascript" src="jquery-1.12.0.min.js"></script> <script type="text/javascript"> $(function () { $("a").attr("title", "歡迎來到 學習網"); }) </script> </head> <body> <div id="main"> <a href="http://www.lvyestudy.com" target="_blank"> 學習網</a> </div> </body> </html>
在浏覽器預覽效果如下:
分析:
這裡使用attr()方法為a標簽添加了一個title屬性。有些人就會問了,搞麼子非要在jQuery添加屬性,我直接在a標簽內部添加不也可以嗎?干嘛那麼費勁呢?說得一點都沒錯。像上面這個例子,我們是可以直接在a標簽內部添加屬性即可。我們在這裡只是用一個簡單給大家講解一下方法罷了。在實際開發中,我們很多時候需要使用jQuery來為某些元素添加一些屬性,這就需要用到上面的方法了。
語法:
舉例:
在線測試<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <script type="text/javascript" src="jquery-1.12.0.min.js"></script> <script type="text/javascript"> $(function () { $("a").removeAttr("title"); }) </script> </head> <body> <a href="http://www.lvyestudy.com" target="_blank" title="歡迎來到 學習網"> 學習網</a> </body> </html>
在浏覽器預覽效果如下:
分析:
在這個例子中,我們使用了removeAttr()方法把a標簽的title屬性刪除。
此外在jQuery中,除了可以使用attr()方法來操作元素的屬性之外,還可以使用prop()方法。prop()方法和attr()方法語法相同,其中prop()用於獲取和設置元素屬性,removeProp()用於刪除元素的屬性。
但是attr()和prop()這2種方法有著本質的區別,其中attr()方法用於操作元素的固有屬性,所謂的“固有屬性”指的是元素本身具有的屬性如a標簽的href、target、title等。而prop()方法用於操作元素的自定義屬性,所謂的“自定義屬性”指的是用戶自己定義的一些屬性。
咦?HTML元素還可以自定義屬性?說得一點都沒錯,在HTML中使用自定義屬性可以完成幫助我們完成一些復雜的操作。使用自定義屬性會比較復雜,對於初學者來說比較困難。因此對於prop()方法,我們再在jQuery進階再跟大家詳細講解。