1.jQuery 語法 Tips: 通過 CDN(內容分髮網絡)引用JQuery:(link的引用最好放在script的引用之前) 獲取CDN網址:http://cdn.code.baidu.com/ jQuery 語法是為 HTML 元素的選取編製的,可以對元素執行某些操作。 基礎語法是:$(se ...
1.jQuery 語法
Tips:
通過 CDN(內容分髮網絡)引用JQuery:(link的引用最好放在script的引用之前)
<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script> <script src="Tab.js"></script>獲取CDN網址:http://cdn.code.baidu.com/
jQuery 語法是為 HTML 元素的選取編製的,可以對元素執行某些操作。
基礎語法是:$(selector).action()
- 美元符號定義 jQuery
- 選擇符(selector)“查詢”和“查找” HTML 元素
- jQuery 的 action() 執行對元素的操作
$(document).ready(function()中的ready是為了防止文檔在完全載入(就緒)之前運行 jQuery 代碼。
2.jQuery 選擇器
- 元素選擇器
$("p") 選取 <p> 元素。
$("p.intro") 選取所有 class="intro" 的 <p> 元素。
$("p#demo") 選取所有 id="demo" 的 <p> 元素。
- 屬性選擇器
$("[href]") 選取所有帶有 href 屬性的元素。
$("[href='#']") 選取所有帶有 href 值等於 "#" 的元素。
$("[href!='#']") 選取所有帶有 href 值不等於 "#" 的元素。
$("[href$='.jpg']") 選取所有 href 值以 ".jpg" 結尾的元素。
- CSS選擇器
把所有 p 元素的背景顏色更改為紅色
$("p").css("background-color","red");
3.jQuery 事件方法
$(document).ready(function) 將函數綁定到文檔的就緒事件(當文檔完成載入時) $(selector).click(function) 觸發或將函數綁定到被選元素的點擊事件 $(selector).dblclick(function) 觸發或將函數綁定到被選元素的雙擊事件 $(selector).focus(function) 觸發或將函數綁定到被選元素的獲得焦點事件 $(selector).mouseover(function) 觸發或將函數綁定到被選元素的滑鼠懸停事件
JQuery事件完整版請看:http://www.w3school.com.cn/jquery/jquery_ref_events.asp
4.jQuery動畫效果
- 隱藏/顯示
方法:hide,show
語法:(speed表示顯示/隱藏速度,其值可以為:“fast”,“slow”或者毫秒,callback表示執行完後運行的函數)
$(selector).hide(speed,callback);
$(selector).show(speed,callback);
- 淡入淡出
方法:fadeIn()【淡入】,fadeOut()【淡出】,fadeToggle()【淡入淡出交互】,fadeTo()【允許給透明度opacity】
語法:$(selector).fadeIn(speed,callback);(前三個方法類同)
$(selector).fadeTo(speed,opacity,callback);
- 滑動
方法:slideDown()【下滑】,slideUp()【上滑】,slideToggle()【上下交互滑動】
語法:$(selector).slideDown(speed,callback);(其他方法類似)
- 動畫
tips:預設情況下,所有 HTML 元素的位置都是靜態的,並且無法移動。如需對位置進行操作,得先把元素的 CSS position 屬性設置為 relative、fixed 或 absolute。
方法:animate()
語法:$(selector).animate({params},speed,callback);(params用於設置動畫的CSS屬性,CSS使用相對值時可用"+="或"-=")
- 動畫STOP
方法:stop()
語法:$(selector).stop(stopAll,goToEnd);(stopAll參數規定是否應該清除動畫隊列,預設是false;goToEnd參數規定是否立即完成當前動畫,預設是false)
- JQuery方法鏈接
例:$("#p1").css("color","red").slideUp(2000).slideDown(2000);
該方法的效果是:"p1" 元素首先會變為紅色,然後向上滑動,然後向下滑動
5.jQuery - 獲得內容和屬性
獲得內容 - text()、html() 以及 val():
- text() - 設置或返回所選元素的文本內容
- html() - 設置或返回所選元素的內容(包括 HTML 標記)
- val() - 設置或返回表單欄位的值
1 $("#btn1").click(function(){ 2 alert("Text: " + $("#test").text()); 3 }); 4 $("#btn2").click(function(){ 5 alert("HTML: " + $("#test").html()); 6 });
獲取標簽屬性 - attr()
獲取:
1 $("button").click(function(){ 2 alert($("#w3s").attr("href")); 3 });設置(單屬性設置和多屬性設置):
1 $("button").click(function(){ 2 $("#w3s").attr("href","http://www.w3school.com.cn/jquery"); 3 }); 4 5 6 $("button").click(function(){ 7 $("#w3s").attr({ 8 "href" : "http://www.w3school.com.cn/jquery", 9 "title" : "W3School jQuery Tutorial" 10 }); 11 });
6.jQuery - 添加/刪除元素
添加HTML內容方法:append()【後添加】,prepend()【前添加】,after()【選定元素後添加】,before()【選定元素前添加】
1 function afterText() 2 { 3 var txt1="<b>I </b>"; // 以 HTML 創建新元素 4 var txt2=$("<i></i>").text("love "); // 通過 jQuery 創建新元素 5 var txt3=document.createElement("big"); // 通過 DOM 創建新元素 6 txt3.innerHTML="jQuery!"; 7 $("img").after(txt1,txt2,txt3); // 在 img 之後插入新元素 8 $("p").append(txt1,txt2,txt3); // 追加新元素 9 10 }
刪除HTML元素方法:remove(),empty()
1 $("#div1").remove(); //刪除被選元素及其子元素 2 3 $("p").remove(".italic"); //刪除類為“italic”的所有p元素1 $("#div1").empty(); //刪除被選元素的子元素
7.jQuery - 獲取並設置 CSS 類
操作CSS的方法:
- addClass() - 向被選元素添加一個或多個類
- removeClass() - 從被選元素刪除一個或多個類
- toggleClass() - 對被選元素進行添加/刪除類的切換操作
- css() - 設置或返回樣式屬性
外部:
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <script src="/jquery/jquery-1.11.1.min.js"> 5 </script> 6 <script> 7 $(document).ready(function(){ 8 $("button").click(function(){ 9 $("h1,h2,p").toggleClass("blue"); 10 }); 11 }); 12 </script> 13 <style type="text/css"> 14 .blue 15 { 16 color:blue; 17 } 18 </style> 19 </head> 20 <body> 21 22 <h1>標題 1</h1> 23 <h2>標題 2</h2> 24 <p>這是一個段落。</p> 25 <p>這是另一個段落。</p> 26 <button>切換 CSS 類</button> 27 </body> 28 </html>內部:
1 //設置單個屬性 2 $("p").css("background-color","yellow"); 3 4 //設置多個屬性 5 css({"propertyname":"value","propertyname":"value",...});
8.jQuery - 尺寸
處理尺寸的方法:
- width():設置或返回元素的寬度(不包括內邊距、邊框或外邊距)。
- height():設置或返回元素的高度(不包括內邊距、邊框或外邊距)。
- innerWidth():返回元素的寬度(包括內邊距)。
- innerHeight():返回元素的高度(包括內邊距)。
- outerWidth():返回元素的寬度(包括內邊距和邊框)。
- outerHeight():返回元素的高度(包括內邊距和邊框)。
- outerWidth(true) 返回元素的寬度(包括內邊距、邊框和外邊距)。
- outerHeight(true) 返回元素的高度(包括內邊距、邊框和外邊距)。
1 $("button").click(function(){ 2 var txt=""; 3 txt+="Outer width (+margin): " + $("#div1").outerWidth(true) + "</br>"; 4 txt+="Outer height (+margin): " + $("#div1").outerHeight(true); 5 $("#div1").html(txt); 6 });Tips:
$(document).height()和$(window).height() 可以獲得文檔和視窗的尺寸
9.jQuery 遍歷
遍歷的方法:
- parent():返回被選元素的直接父元素。
- parents():返回被選元素的所有祖先元素,它一路向上直到文檔的根元素 (<html>)。(可過濾)
- parentsUntil():返回介於 <span> 與 <div> 元素之間的所有祖先元素:
1 $(document).ready(function(){ 2 $("span").parentsUntil("div"); 3 });
- children():返回被選元素的所有直接子元素,只會向下一級對 DOM 樹進行遍歷。
- find():返回被選元素的後代元素,一路向下直到最後一個後代。
1 //下麵例子返回屬於 <div> 後代的所有 <span> 元素: 2 $(document).ready(function(){ 3 $("div").find("span"); 4 }); 5 6 //下麵的例子返回 <div> 的所有後代: 7 $(document).ready(function(){ 8 $("div").find("*"); 9 });
- siblings():返回被選元素的所有同胞元素。
- next():返回被選元素的下一個同胞元素。
- nextAll():返回被選元素的所有跟隨的同胞元素。
- nextUntil():返回介於兩個給定參數之間的所有跟隨的同胞元素。
- prev()【以下三個與上面類似,遍歷方向向上】
- prevAll()
- prevUntil()
- eq():返回被選元素中帶有指定索引號的元素。
- filter(".intro"):方法允許您規定一個標準。不匹配這個標準的元素會被從集合中刪除,匹配的元素會被返回。
- not(".intro"):返回不匹配標準的所有元素。