jQuery是什麼? jQuery是一個以 Javascript 來編寫的函式庫,
簡單來說就是先幫你實作了很多Javascript的函數功能,用途
是讓開發者可以更輕鬆方便的製作網站功能,最重要的是它
是免費的。

jQuery 特性之憂缺點大略如下:
  1. 簡潔不笨重,壓縮後大約 32kB (v1.12.4)。
  2. 使用 JavaScript 語法,不用再多去學習一大堆新語法。
  3. 不用煩惱跨瀏覽器 (cross-browser) 的問題,jQuery 已經幫你作好了 (IE, Firefox, Safari, Opera, Chrome)。
  4. 支援 CSS3 選擇器。
  5. 社群活躍,你可以有很多人家寫好免費的 plugin 用。
  6. 跟其它 library 一起使用也不衝突 (jQuery.noConflict())。
jQuery 函數名稱就叫 jQuery,也可以叫做 $
jQuery 函數傳入字串或物件均可,其概念為物件導向之多形。
jQuery 函數傳入之字串,可作多樣的變化,各種變化如下:

三個選擇方式:
(1)選擇標簽為 X 的語法:$(“X”)
(2)選擇 id 為 Y 的語法:$(“#Y”)
(3)選擇 class 為 Z 的語法:$(“.Z”)
 
<X>Hello</X>
<T id="Y">Hello</T>
<K class="Z">Hello</K>
(1)選擇標籤為 div 且 id 為 X 的語法:$("div #X")
(2)選擇標籤為 X 且 class 為 Y 的下一層 p 元素語法:$("X .Y p")
(3)選擇標籤為 div 的下一層 div 的語法:$("div > div")
<div id="X">

<X class="Y">
    <p>...</p>
    <p>...</p>
</X>

<div>
    <p>
    </p>
    <div>
    ....
    </div>
</div>

選擇選單 ul 之第 2 個 li :$("ul li:nth-child(2)");
選擇選單 ul 之所有奇數的 li :$("ul li:nth-child(odd)");
選擇選單 ul 之1, 4, 7 的 li :$("ul li:nth-child(3n + 1)");
選擇選單 div 之第 1 個子節點 :$("div span:first-child");
選擇選單 div 之最後一個節點 :$("div span:last-child");
選擇選單 div 之所有只有一個 button 的子節點 :
$("div button:only-child");
 
 
選擇含有 id 屬性的所有 div :$("div[id]");
選擇 name = ’John’ 的所有 input :$("input[name='John']");
選擇 name != ’John’ 的所有 input :$("input[name!='John']");
選擇 name 屬性以’T' 開頭的所有 input :$("input[name^='T']");
選擇 name 屬性以’s' 結尾的所有 input :$("input[name$='s']");
選擇 name 屬性包含’ab’的所有 input :$("input[name*='ab']");
多屬性聯合選擇
選擇含有 id 屬性且 name 屬性以 'abc' 結尾的所有 input :
$("input[id][name$='abc']");
 
 
:even:找出結果集中其偶數的元素 (2,4,6,8…)
: odd: 找出結果集為奇數(單數)的元素 (1,3,5,7…)
:eq(N), :nth(N):找出選擇結果集 index 為 N 的元素
:gt(N):找出結果集中索引大於 N 的元素
:lt(N):找出結果集中索引小於 N 的元素
:first:找出結果集中的第一個元素 (相當於 eq(0) 或者 nth(0))
:last:選擇結果集中的最後一個元素
:parent:在結果集中選擇元素,它必須具有子元素(包括文本節點)(跟 :empty 相反)
:contains(‘test’):選擇結果集中包含有指定文本的元素
:has(selector):找出結果集中至少出現一次某 selector 的元素
:not(selector):反選取指定的 selector
 
:visible 選擇所有可見(visible)的元素
display 屬性的值等於 visible、block、inline
visibility 屬性的值等於 visible
:hidden 選擇所有隱藏(visible)的元素
display 屬性的值等於 none
visibility 屬性的值等於 hidden
 
:input 選擇所有表單元素(input, select, textarea, button)
:text 選擇所有 (type="text").
:password 選擇所有 (type="password").
:radio 選擇所有 (type="radio").
:checkbox 選擇所有 (type="checkbox").
:submit 選擇所有 (type="submit").
:image 選擇所有 (type="image").
:reset 選擇所有 (type="reset").
:button 選擇所有按鈕 (type="button").
:file 選擇所有 <input type="file">.
:hidden 選擇所有隱藏的表單元素
 
$("input:enabled"); //選擇所有的可操作的表單元素
$("input:disabled"); //選擇所有的不可操作的表單元素
$("input:checked"); //選擇所有的被checked的表單元素
$("input#test:checked"); //選擇所有的被checked的 input id=test 表單元素
$("select option:selected"); //選擇所有的select 的子元素中被selected的元素​​​​​​​​​