jQuery-介紹及使用


jQuery 介紹:

  什么是 jQuery ?

    jQuery,顧名思義,也就是 JavaScript 和查詢(Query),它就是輔助 JavaScript 開發的 js 類庫。
 
  jQuery 核心思想!!!
    它的核心思想是 write less,do more(寫得更少,做得更多),所以它實現了很多瀏覽器的兼容問題。
 
  jQuery 流行程度
    jQuery 現在已經成為最流行的 JavaScript 庫,在世界前 10000 個訪問最多的網站中,有超過 55%在使用jQuery。
 
  jQuery 好處!!!
    jQuery 是免費、開源的,jQuery 的語法設計可以使開發更加便捷,例如操作文檔對象、選擇 DOM 元素、制作動畫效果、事件處理、使用 Ajax 以及其他功能
   
  可在jQuery API文檔中查詢jQuery 的功能

jQuery的使用:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
        <script type="text/javascript" src="../script/jquery-1.7.2.js">

        </script>
        <script type="text/javascript">
            // window.onload = function () {
            //     var binIdObj = document.getElementById('btnId');
            //     binIdObj.onclick = function () {
            //         alert("js 原生的單擊事件")
            //     }
            // }
            $(function () {//表示頁面加載完成之后,相當於 window.onload = function () {}
                var $btnObj = $("#btnId");//表示按id查詢標簽對象 是jQuery對象(默認變量名以$開頭)
                $btnObj.click(function () {//綁定單擊事件
                    alert("jQuery 的單擊事件");
                });
            });

        </script>
</head>
<body>

    <button id="btnId" >SayHello</button>

</body>
</html>

  常見問題?

    1、使用 jQuery 一定要引入 jQuery 庫嗎?    答案: 是,必須
    2、jQuery 中的$到底是什么?    答案: 它是一個函數
    3、怎么為按鈕添加點擊響應函數的?  答案:
                  1、使用 jQuery 查詢到標簽對象
                  2、使用標簽對象.click( function(){} );

 

 

jQuery 核心函數:

    1、傳入參數為 [ 函數 ] 時:  表示頁面加載完成之后。相當於 window.onload = function(){}
    2、傳入參數為 [ HTML 字符串 ] 時:  會對我們創建這個 html 標簽對象
    3、傳入參數為 [ 選擇器字符串 ] 時:$(“#id 屬性值”);id 選擇器,根據 id 查詢標簽對象
                    $(“標簽名”);標簽名選擇器,根據指定的標簽名查詢標簽對象
                    $(“.class 屬性值”); 類型選擇器,可以根據 class 屬性查詢標簽對象
    4、傳入參數為 [ DOM 對象 ] 時:會把這個 dom 對象轉換為 jQuery 對象
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type="text/javascript" src="../script/jquery-1.7.2.js"></script>
<script type="text/javascript">

    //核心函數的4個作用
    $(function () {
        alert("頁面加載完成之后,自動調用")

        $(  "<div>" +
            "        <span>div-span1</span>" +
            "        <span>div-span2</span>" +
            "    </div>"
        ).appendTo("body")
        // alert($("button").length);

        var btnObj = document.getElementById('btn01');
        // alert(btnObj);
        // alert($(btnObj));


        // alert($("<h1></h1>")); //通過jQueryAPI創建的jQuery對象

        alert($("button"));

    });
    //傳入參數為[函數]時:在文檔加載完成后執行這個函數
    //傳入參數為[HTML字符串]時:根據這個字符串創建元素節點對象
    //傳入參數為[選擇器字符串]時:根據這個字符串查找元素節點對象
    //傳入參數為[DOM對象]時:將DOM對象包裝為jQuery對象返回

</script>
</head>
<body>
    <div>
        <button id="btn01">按鈕1</button>
        <button>按鈕2</button>
        <button>按鈕3</button>
    </div>
</body>
</html>

 

jQuery 對象和 dom 對象區分:

   什么是 jQuery 對象,什么是 dom 對象: 

     Dom 對象

1.通過 getElementById()查詢出來的標簽對象是 Dom 對象
2.通過 getElementsByName()查詢出來的標簽對象是 Dom 對象
3.通過 getElementsByTagName()查詢出來的標簽對象是 Dom 對象
4.通過 createElement() 方法創建的對象,是 Dom 對象
DOM 對象 Alert 出來的效果是:[object HTML 標簽名 Element]

     jQuery 對象

5.通過 JQuery 提供的 API 創建的對象,是 JQuery 對象
6.通過 JQuery 包裝的 Dom 對象,也是 JQuery 對象
7.通過 JQuery 提供的 API 查詢到的對象,是 JQuery 對象
jQuery 對象 Alert 出來的效果是:[object Object]

 

   jQuery 對象的本質是什么?  

      j Query 對象是 dom 對象的數組 + jQuery 提供的一系列功能函數。
 

   jQuery 對象和 Dom 對象使用區別

      jQuery 對象不能使用 DOM 對象的屬性和方法
      DOM 對象也不能使用 jQuery 對象的屬性和方法

    

   Dom 對象和 jQuery 對象互轉

      1、dom 對象轉化為 jQuery 對象(*重點)
        1、先有 DOM 對象
        2、$( DOM 對象 ) 就可以轉換成為 jQuery 對象
 
      2、jQuery 對象轉為 dom 對象(*重點)
        1、先有 jQuery 對象
        2、jQuery 對象[下標]取出相應的 DOM 對象

 

 

jQuery 選擇器(*****重點)

  基本選擇器(****重點)

     

    #ID     選擇器:根據 id 查找標簽對象
    .class    選擇器:根據 class 查找標簽對象
    element     選擇器:根據標簽名查找標簽對象
    *      選擇器:表示任意的,所有的元素
    selector1,selector2 組合選擇器:合並選擇器 1,選擇器 2 的結果並返回

  層級選擇器(****重點) 

    

     ancestor descendant后代選擇器:  在給定的祖先元素下匹配所有的后代元素   ancestor元素下所有的descendant元素
     parent > child子元素選擇器:    在給定的父元素下匹配所有的子元素
     prev + next相鄰元素選擇器:    匹配所有緊接在 prev 元素后的 next 元素
     prev ~ sibings之后的兄弟元素選擇器:匹配 prev 元素之后的所有 siblings 元素

  過濾選擇器: 

     :first        獲取第一個元素
     :last        獲取最后個元素
    :not(selector)    去除所有與給定選擇器匹配的元素
    :even         匹配所有索引值為偶數的元素,從 0 開始計數
    :odd        匹配所有索引值為奇數的元素,從 0 開始計數
     :eq(index)       匹配一個給定索引值的元素
    :gt(index)        匹配所有大於給定索引值的元素
    :lt(index)       匹配所有小於給定索引值的元素
    :header         匹配如 h1, h2, h3 之類的標題元素
    :animated      匹配所有正在執行動畫效果的元素 

 

  內容過濾器:

    :contains(text) 匹配包含給定文本的元素
    :empty    匹配所有不包含子元素或者文本的空元素
    :parent    匹配含有子元素或者文本的元素
    :has(selector) 匹配含有選擇器所匹配的元素的元素
 

   屬性過濾器: 

     [attribute]          匹配包含給定屬性的元素。
     [attribute=value]       匹配給定的屬性是某個特定值的元素
    [attribute!=value]        匹配所有不含有指定的屬性,或者屬性不等於特定值的元素。
    [attribute^=value]        匹配給定的屬性是以某些值開始的元素
    [attribute$=value]        匹配給定的屬性是以某些值結尾的元素
    [attribute*=value]        匹配給定的屬性是以包含某些值的元素
    [attrSel1][attrSel2][attrSelN]  復合屬性選擇器,需要同時滿足多個條件時使用
 

  表單過濾器: 

    :input    匹配所有 input, textarea, select 和 button 元素
    :text      匹配所有 文本輸入框
    :password  匹配所有的密碼輸入框
    :radio    匹配所有的單選框
    :checkbox  匹配所有的復選框
    :submit    匹配所有提交按鈕
    :image     匹配所有 img 標簽
    :reset    匹配所有重置按鈕
    :button     匹配所有 input type=button <button>按鈕
    :file     匹配所有 input type=file 文件上傳
    :hidden    匹配所有不可見元素 display:none 或 input type=hidden
 

   表單對象屬性過濾器:

    :enabled     匹配所有可用元素
    :disabled    匹配所有不可用元素
    :checked    匹配所有選中的單選,復選,和下拉列表中選中的 option 標簽對象
    :selected    匹配所有選中的 option
 

  jQuery 元素篩選

    eq()         獲取給定索引的元素                  功能跟 :eq() 一樣
    first()       獲取第一個元素                 功能跟 :first 一樣
    last()       獲取最后一個元素                功能跟 :last 一樣
    filter(exp)     留下匹配的元素
    is(exp)      判斷是否匹配給定的選擇器,只要有一個匹配就返回,true
    has(exp)     返回包含有匹配選擇器的元素的元素        功能跟 :has 一樣
    not(exp)      刪除匹配選擇器的元素              功能跟 :not 一樣
    children(exp)      返回匹配給定選擇器的子元素           功能跟 parent>child 一樣
    find(exp)       返回匹配給定選擇器的后代元素          功能跟 ancestor descendant 一樣
    next()      返回當前元素的下一個兄弟元素          功能跟 prev + next 功能一樣
    nextAll()     返回當前元素后面所有的兄弟元素          功能跟 prev ~ siblings 功能一樣
    nextUntil()     返回當前元素到指定匹配的元素為止的后面元素
    parent()      返回父元素
    prev(exp)      返回當前元素的上一個兄弟元素
    prevAll()        返回當前元素前面所有的兄弟元素
    prevUnit(exp)     返回當前元素到指定匹配的元素為止的前面元素
    siblings(exp)    返回所有兄弟元素
    add()       把 add 匹配的選擇器的元素添加到當前 jquery 對象中

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM