jQuery 語法是爲 HTML 元素的選取編制的,能夠對元素執行某些操做。css
基礎語法是:_$(selector).action()_html
$(this).hide() - 隱藏當前元素ajax
$("p").hide() - 隱藏全部段落json
$(".test").hide() - 隱藏全部 class="test" 的全部元素bootstrap
$("#test").hide() - 隱藏全部 id="test" 的元素瀏覽器
您也許已經注意到在咱們的實例中的全部 jQuery 函數位於一個 document ready 函數中:服務器
$(document).ready(function(){dom
--- jQuery functions go here ----ide
});函數
這是爲了防止文檔在徹底加載(就緒)以前運行 jQuery 代碼。
若是在文檔沒有徹底加載以前就運行函數,操做可能失敗。下面是兩個具體的例子:
對於已是一個DOM對象,只須要用$()
把DOM對象包裝起來,就能夠得到一個jQuery對象了。$(DOM對象)
function myclick(){ var div1 = document.getElementById("myinput"); //把dom轉換成jQuery對象 var jdiv1 = $(div1); alert(jdiv1.val()); }
function myclick(){ var div1 = document.getElementById("myinput"); //把dom轉換成jQuery對象 var jdiv1 = $(div1); //把jQuery對象轉換成dom對象 alert(jdiv1\[0\].value); alert(jdiv1.get(0).value); }
1. #id 用法: $(」#myDiv」); 返回值 單個元素的組成的集合
function myclick(){ //根據id選擇器得到jQuery對象 var jinput = $("#myinput"); alert(jinput.val()); }
2. Element 用法: $(」div」) 返回值 集合元素,元素選擇器
jQuery 使用 CSS 選擇器來選取 HTML 元素。
$("p") 選取 <p> 元素。
$("p.intro") 選取全部 class="intro" 的 <p> 元素。
$("p#demo") 選取全部 id="demo" 的 <p> 元素。
3. class 用法: $(」.myClass」) 返回值 集合元素
4. selector1, selector2, ..., selectorN 用法: $(」div,span,p.myClass」) 返回值 集合元素,多種選擇器一同使用咱們須要使用逗號來分隔。
function myclick(){ var divs = $(".divcss,input,textarea,#div1"); divs.each(**function**(){ var divObj = $(**this**); alert(divObj.html()); }) }
jQuery 使用 XPath 表達式來選擇帶有給定屬性的元素。
$("[href]") 選取全部帶有 href 屬性的元素。
$("[href='#']") 選取全部帶有 href 值等於 "#" 的元素。
$("[href!='#']") 選取全部帶有 href 值不等於 "#" 的元素。
$("\[href$='.jpg'\]")
選取全部 href 值以 ".jpg" 結尾的元素。
用法$(」form input」) ; 返回值 集合元素,空格表明下級。
用法:$(」form > input」) ; 返回值 集合元素。
用法: $(」tr:first」) ; 返回值 單個元素的組成的集合 說明: 匹配找到的第一個元素
:last用法: $(」tr:last」) 返回值 集合元素 說明:匹配找到的最後一個元素.與:first相對應.
(function() {})
,即$(document).ready(function()
,何時執行?
答案:DOM
加載完畢以後執行。DOM
是什麼?DOM
就是一個html
頁面的標籤樹:
那麼何時,DOM
加載完成了呢?即頁面全部的html
標籤(包括圖片等)都加載完了,即瀏覽器已經響應完了,加載完了,所有展示到瀏覽器界面上了。
總結DOM
在第一次頁面加載完畢後,就在內存裏了,不管後面怎麼經過ajax
的方式去局部修改html
頁面,都只是對內存中的DOM
樹進行修改,而DOM
在第一次頁面加載完畢後就已經加載完畢了。
因此後面js
文件(動態加載或者head
中加載)再使用到$(function() {})
函數確定會執行的。
1.事件結合選擇器會把選擇器選出來的一組元素都加上事件
2.在元素上能夠不去指定事件
3.事件的方法建議使用匿名方法
4.事件的賦值必需要放在jQuery的主函數內部
經過 jQuery,您可使用 toggle() 方法來切換 hide() 和 show() 方法。
顯示被隱藏的元素,並隱藏已顯示的元素:
$("button").click(function(){
$("p").toggle();
});
三個簡單實用的用於 DOM 操做的 jQuery 方法:
$("#btn1").click(function(){ alert("Value: " + $("#test").val()); });
咱們將使用前一章中的三個相同的方法來設置內容:
下面的例子演示如何經過 text()、html() 以及 val() 方法來設置內容:
$("#btn1").click(function(){ $("#test1").text("Hello world!"); }); $("#btn2").click(function(){ $("#test2").html("<b>Hello world!</b>"); }); $("#btn3").click(function(){ $("#test3").val("Dolly Duck"); });
這些 jQuery 方法頗有用,它們用於向上遍歷 DOM 樹:
下面是兩個用於向下遍歷 DOM 樹的 jQuery 方法:
有許多有用的方法讓咱們在 DOM 樹進行水平遍歷:
jQuery load() 方法是簡單但強大的 AJAX 方法。
load() 方法從服務器加載數據,並把返回的數據放入被選元素中。
$(_selector_).load(_URL_,_data_,_callback_);
$("#div1").load("demo_test.txt");
jQuery get() 和 post() 方法用於經過 HTTP GET 或 POST 請求從服務器請求數據。
$.get(URL,callback);
$("button").click(function(){ $.post("demo_test_post.asp", { name:"Donald Duck", city:"Duckburg" }, function(data,status){ alert("Data: " + data + "\nStatus: " + status); }); });
function ajaxInvoke(){ var uname = $("#username").val(); var opt = { type:'post',//請求方式 url:'${path}/login',//請求的地址 data:{ username:uname//username=uname }, dataType:'json',//返回值的類型,通常使用兩種,text,json success:function(responseJSON){//ajax調用成功後的回調方法 //若是dataType是json那麼要求後臺必定要返回JSONObject或者JSONArray對象,這個後臺的json對象會直接轉換成js中的json //alert(responseJSON.id+ " "+responseJSON.name +" "+responseJSON.age); for(var i = 0; i < responseJSON.length; i++){ alert(responseJSON\[i\].id + " "\+ responseJSON\[i\].name + " "+responseJSON\[i\].age); } }, error:function(){//調用失敗進入的方法 alert("系統錯誤");//若是404或者後臺報異常就會走入error } }; $.ajax(opt); }
本章節咱們將講解 Bootstrap 的網格系統(Grid System)。
Bootstrap 提供了一套響應式、移動設備優先的流式網格系統,隨着屏幕或視口(viewport)尺寸的增長,系統會自動分爲最多12列。
模態框(Modal)是覆蓋在父窗體上的子窗體。一般,目的是顯示來自一個單獨的源的內容,能夠在不離開父窗體的狀況下有一些互動。子窗體可提供信息、交互等。
若是您想要單獨引用該插件的功能,那麼您須要引用 modal.js。或者,正如 Bootstrap 插件概覽一章中所提到,您能夠引用_bootstrap.js_或壓縮版的_bootstrap.min.js_。
用法
您能夠切換模態框(Modal)插件的隱藏內容:
經過 JavaScript:使用這種技術,您能夠經過簡單的一行 JavaScript 來調用帶有 id="identifier" 的模態框:
$('#identifier').modal(options)