Jquery 知識(shí)點(diǎn)總結(jié)

一 簡(jiǎn)介

jquery 是一個(gè)js類(lèi)庫(kù),其實(shí)就是對(duì)js常用的方法進(jìn)行封裝富拗,方便我們使用。

二 jquery和html的整合

其實(shí)jquery既然是js的類(lèi)庫(kù),那么我們就可以像導(dǎo)入js一樣導(dǎo)入jquery

注意:jquery是一個(gè)單獨(dú)的js文件朱庆,通過(guò)script標(biāo)簽的src屬性導(dǎo)入即可沙绝。

三 jquery對(duì)象的獲取

語(yǔ)法:$("選擇器") 或者jQuery(“選擇器”)
通過(guò)以上兩種方式都可以獲得jq對(duì)象疏之。

四 dom對(duì)象和jquery對(duì)象之間的相互轉(zhuǎn)換

  • dom轉(zhuǎn)jquery:
    $("dom對(duì)象")
  • jquery轉(zhuǎn)dom(參考下面詳細(xì)案例)
    1 jquery對(duì)象[index]
    2 jquery對(duì)象.get(index)
代碼案例:
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title></title>
            <script type="text/javascript" src="../js/jquery-1.11.0.js" ></script>
    </head>
    <body>
        <!-- 
            1 jquery 定義
            jquery對(duì)js常用的方法屬性進(jìn)行封裝胆筒,方便我們使用朽色。(幾乎占據(jù)了js的一半)
            2 jquery與html 的整合
            其實(shí)jquery是一個(gè)獨(dú)立的.js 文件 和導(dǎo)入單獨(dú)的js文件一樣拘悦,通過(guò)Script的src導(dǎo)入即可
            3獲取Jquery對(duì)象
            $("選擇器") 或者jquery("選擇器");
            4 dom和jquery的互相轉(zhuǎn)換
              dom裝換為jquery -》  $(dom 對(duì)象)
            5 jquery 轉(zhuǎn)dom
                兩種方式: 
                a:jquery對(duì)象[index]
                b: jquery對(duì)象.get(index)
            
            
        -->
        username:<input type="text" value ="kate" id="username"/>
    </body>

    <script>
        // jquery 的簡(jiǎn)單引入及其測(cè)試 
        var $obj = $("#username");
        alert($obj.val());
        // dom裝換為jquery
       var $username = $(document.getElementById("username"));
       alert("dom 轉(zhuǎn)jQuery"+$username.val())
       // jquery 轉(zhuǎn)dom
       
          //  由于使用的是id選擇器就一個(gè)元素對(duì)象故此處使用[0] 
       var obj = $username[0];
       alert("jquery 轉(zhuǎn)dom  方式1"+obj.value);
       var obj2 = $username.get(0);
       alert("jquery 轉(zhuǎn)dom  方式2"+obj2.value);
    </script>
</html>

五 :與js相同功能的使用

1 頁(yè)面的加載(onload)
js中:
window.onload=function(){}

jquery中方式1(簡(jiǎn)寫(xiě)齿兔,使用較多):
$(function(){...})

jquery中方式2(全寫(xiě)):
$(document).ready(function(){});

js方式與jquery方式的加載有區(qū)別:
js方式只能使用一次window.onload=function(){},如果你在寫(xiě)了個(gè)onoad后面的會(huì)覆蓋前面的方法础米。然而jquery的都執(zhí)行分苇,不會(huì)覆蓋。

code Example:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <script type="text/javascript" src="../js/jquery-1.11.0.js" ></script>
    </head>
    <body>
        <!--
            頁(yè)面的加載:
            js方式:
            window.onload = function(){}
            
            jquery 方式:
            1 簡(jiǎn)寫(xiě)
            $(function(){})
            
            2 全寫(xiě)
            $(document).ready(function(){});
            
              注意兩種方式的區(qū)別: // onload在一個(gè)頁(yè)面中只能使用一次  出現(xiàn)多次的時(shí)候回覆蓋
                           jquery 在一個(gè)頁(yè)面中可以使用多次
                    
        -->
    </body>
    <script>
        // js方式頁(yè)面加載:
        window.onload = function(){
            alert("js方式頁(yè)面加載1");
        }
        
        // 此處的方法會(huì)覆蓋上面的方法  而使用jQuery就不覆蓋 
//      window.onload = function(){
//          alert("頁(yè)面加載2");
//      }


        // jquery方式
        $(function(){alert("Jquery 方式頁(yè)面加載1")});
        $(function(){alert("Jquery 方式頁(yè)面加載2")});
        $(function(){alert("Jquery 方式頁(yè)面加載3")});
        // 無(wú)論出現(xiàn)幾個(gè)都不會(huì)覆蓋的(此處執(zhí)行了三遍)
    </script>
</html>

2 事件的派發(fā)
js的事件派發(fā):
// dom 方式
dom對(duì)象.onclick=function(){....}

jquery的事件派發(fā);
$("選擇器").click(function(){...});

jq中其他事件:
        focus
        blur
        submit
        change
        click

補(bǔ)充:$("選擇器").html  往標(biāo)簽提內(nèi)寫(xiě)內(nèi)容

兩者之間的細(xì)小區(qū)別:jquery吧以前的事件的on去掉屁桑,吧函數(shù)作為參數(shù)傳遞就行医寿。
其他事件一樣。

代碼測(cè)試:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <script type="text/javascript" src="../js/jquery-1.11.0.js" ></script>
    </head>
    <body>
        <!--
            方式j(luò)query 的事件派發(fā)  和dom一樣類(lèi)似
            dom 的方式為:
            dom對(duì)象.onclick = function(){}
            
            jquery的方式:
            jquery對(duì)象.click(function(){})
            
            兩者對(duì)比: 只是jquery吧onclick 的on去掉了就這個(gè)小差別
        -->
        <input type="button" value="kate" id="btn" />
    </body>
    <script>
        // dom 方式事件派發(fā)
        document.getElementById("btn").onclick = function(){
            alert("dom 方式的事件派發(fā)");
        }
        // 方式j(luò)query 事件派發(fā)
        $("#b").click(function(){
            alert("jquery方式的事件");
        })
    </script>
</html>

六 jquery中的動(dòng)畫(huà)效果

jquery中效果:(jq對(duì)象調(diào)用即可)

  • 隱藏或展示
    show(毫秒數(shù)) hide(毫秒數(shù))
  • 滑入或滑出
    slideDown(毫秒數(shù)):向下滑入
    slideUp(毫秒數(shù)):向上滑出
  • 淡入或淡出
    fadeIn(int):淡入
    fadeOut(int):淡出

代碼案例:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title> 
        <style type="text/css">
            div{
                background-color: #FF0000;
                width: 100px;
                height: 100px;
            }
        </style>
        <script type="text/javascript" src="../js/jquery-1.11.0.min.js" ></script>
    </head>
    <body>
        <!--
            作者:1246771571@qq.com
            時(shí)間:2018-11-01
            描述:
        jquery中效果:
               隱藏或展示
        show(毫秒數(shù)) hide(毫秒數(shù))
        
              滑入或滑出
        slideDown(毫秒數(shù)):向下滑入
        slideUp(毫秒數(shù)):向上滑出
        
               淡入或淡出
        fadeIn(int):淡入
        fadeOut(int):淡出
        -->
        <input type="button" value="顯示隱藏" id="btn1" />
        <input type="button" value="劃入劃出" id="btn2" />
        <input type="button" value="淡入淡出" id="btn3" />
        <div id="div1"></div><br>
    </body>
    <script>

        
        // 頁(yè)面加載完成后進(jìn)行事件
        $(function(){
            // 點(diǎn)擊按鈕 產(chǎn)生事件    顯示隱藏 show() hide()
            $("#btn1").click(function(){
                //隱藏控件 參數(shù)為xxx毫秒內(nèi)完成
                //$("#div1").hide(2000);
                // 顯示使用show就行
                // 可以使用toggle()方法 點(diǎn)擊顯示 再次點(diǎn)擊就隱藏
                $("#div1").toggle(2000);
                
            });
            
            // 劃入劃出事件 slideUp()  slideDown()
            $("#btn2").click(function(){
                // 當(dāng)控件處于顯示狀態(tài)時(shí) 你只能使用劃出狀態(tài)(同理不顯示時(shí)可以調(diào)用劃入的方法)
                //$("#div1").slideUp(2000);
                
                // 同上特也有SlideToggle()方法
                $("#div1").slideToggle(2000);
                
            });
            
            // 點(diǎn)擊按鈕   div產(chǎn)生淡入淡出事件
            $("#btn3").click(function(){
              // 使用fadeOut fadeIn了  直接 fadeTaggle()
                $("#div1").fadeToggle(2000);
                
            });
        })
    </script>
</html>

七 選擇器

1基本選擇器★
 $("#id值")           id選擇器
 $(".class值")         類(lèi)選擇器
 $("標(biāo)簽名")           標(biāo)簽選擇器
 $("*")                獲取全部元素
 $("#id值,.class值")   獲取多個(gè)選擇器

 注意:可以通過(guò)jquery對(duì)象.css("屬性","值")  設(shè)置css樣式蘑斧。
 了解:$("*")獲取全部元素  
 
所有的元素都獲取例如:$("*").css()  給所有的元素設(shè)置css樣式

理解:獲取多個(gè)選擇器 用逗號(hào)隔開(kāi)
            $("#id值,.class值")
            選擇符合上面兩種選擇器的元素

代碼demo

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title> 
        <style type="text/css">
            div{
                background-color: #FF0000;
                width: 100px;
                height: 100px;
            }
        </style>
        <script type="text/javascript" src="../js/jquery-1.11.0.min.js" ></script>
    </head>
    <body>
        <!--
            作者:1246771571@qq.com
            時(shí)間:2018-11-01
            描述:
        1基本選擇器★
        
        $("#id值")  $(".class值")  $("標(biāo)簽名") 
        id 類(lèi) 標(biāo)簽選擇器和css的使用類(lèi)似
        
        了解:$("*")獲取全部元素   
        所有的元素都獲取例如:$("*").css()  給所有的元素設(shè)置css樣式
        
        理解:獲取多個(gè)選擇器 用逗號(hào)隔開(kāi)
            $("#id值,.class值")
            選擇符合上面兩種選擇器(符合一個(gè)就行)的元素
        
        2 
        -->
        <input type="button" value="id選擇器(類(lèi) 元素不再給出)" id="btn1" />
        <input type="button" value="全部選"  id="btn2" />
        <input type="button" value="多個(gè)"  id="btn3" />
        <div id="div1"></div><br><br />
        <div id="div1",class="class1"></div><br>
    </body>
    <script>

        
        
        $(function(){
            // 此處介紹個(gè)id選擇  class 元素選擇器和css類(lèi)似就不介紹了靖秩。
            $("#btn1").click(function(){
                $("#div1").css("background-color","aqua");
                
            });
            
            // 選擇全部元素
            $("#btn2").click(function(){
                $("*").css("background-color","chartreuse");
                
            });
            
            // 選擇 id為 div1 class 為class1 的
            
            $("#btn3").click(function(){
                $("#div1,.class1").css("background-color","crimson");
                
            });
        })
    </script>
</html>

2 層次選擇器

層次選擇器 ★ 重點(diǎn) 類(lèi)似css的后代選擇器

  • a空格b a的所有b后代(a標(biāo)簽下的所有元素)
  • a>b a的所有b孩子 (a標(biāo)簽下的所有子元素,孫子元素就不行了不滿足)
  • a+b a的下一個(gè)兄弟(大弟弟)
    (假如存在標(biāo)簽a嵌套b竖瘾,c標(biāo)簽沟突。b(id為id1),c(id為id2)是并列的捕传,則id1下的id2 可寫(xiě)為$("#id1+#id2"))
<a>
  <b id ="id1"></b>
  <c id = "id2"></c>
  <d></d>
</a>

則id1下的id2 標(biāo)簽(c) 可寫(xiě)為$("#id1+#id2")

  • a~b a的所有弟弟
3 基本過(guò)濾選擇器
基本過(guò)濾選擇器:★
        :frist 第一個(gè)         例如選擇第一個(gè)為div的: $("div:first")
        :last 最后一個(gè)        $("div:last")
        :odd  索引奇數(shù)        $("div:odd")
        :even 索引偶數(shù)
        :eq(index) 指定索引   $("div:eq(3)")
        :gt(index) >          $("div:gt(3)")
        :lt(index) <          $("div:lt(3)")
4 內(nèi)容過(guò)濾
:has("選擇器"):包含指定選擇器的元素 

 //例如: class元素為mini的div 
 $("div:has(".mini")")
5 可見(jiàn)過(guò)濾:

:hidden   在頁(yè)面不展示元素 一般指 input type="hidden" 和 樣式中display:none 
注意:br換行也是頁(yè)面不展示的
:visible 

例如選取所有可見(jiàn)的div:

$("div:visiable")
注意 jquery對(duì)象可以鏈?zhǔn)秸{(diào)用
6屬性過(guò)濾器:★
1 [屬性名]     
  含有此屬性的元素  
  例如含有屬性為title的div     $("div[title]")
2 [屬性名="值"]   不但含有此元素惠拭,還要有指定的值。
7 表單過(guò)濾:
:input  所有的表單子標(biāo)簽  input select textarea button

八 jq對(duì)屬性和css操作總結(jié)

1 對(duì)屬性的操作:
        attr():設(shè)置或者獲取元素的屬性
            方式1:獲取
                attr("屬性名稱")
            方式2:設(shè)置一個(gè)屬性
                attr("屬性名稱","值");
            方式3:設(shè)置多個(gè)屬性  json
                attr({
                    "屬性1":"值1",
                    "屬性2":"值2"
                })
        removeAttr("屬性名稱"):移除指定屬性
    //添加class屬性的時(shí)候 
    //  attr("class","值");
    addClass("指定的樣式值"); 相當(dāng)于 attr("class","指定的樣式值");
    removeClass("指定的樣式值");

2 對(duì)css操作:操作元素的style屬性
        css():獲取或者設(shè)置css樣式
            方式1:獲取  
                css("屬性名")
            方式2:設(shè)置一個(gè)屬性
                css("屬性名","值")
            方式3:設(shè)置多個(gè)
                css({
                    "屬性1":"值1",
                    "屬性2":"值2"
                });
3 獲取元素的尺寸:
        width()
        height()

九 補(bǔ)充

技術(shù):
    遍歷數(shù)組
        數(shù)組.each(function(){});
        $.each(遍歷數(shù)組,function(){});
        
    注意:
        each的function中可以加兩個(gè)參數(shù) index和dom
            index是當(dāng)前遍歷的索引值
            dom指代的是當(dāng)前遍歷的dom對(duì)象(開(kāi)發(fā)中一般使用this即可)
    //////////////////////////////
    設(shè)置或者獲取value屬性
        jquery對(duì)象.val():獲取
        jquery對(duì)象.val("...."):設(shè)置
    /////////////////////////////////////////
    設(shè)置獲取獲取標(biāo)簽體的內(nèi)容 
        html()
        text()
        
        xxxxx():獲取標(biāo)簽體的內(nèi)容
        xxxxx("....."):設(shè)置標(biāo)簽體的內(nèi)容
            
            設(shè)置的區(qū)別:
                html:會(huì)把字符串解析
                text:只做為普通的字符串
            獲取的區(qū)別:
                html:獲取的html源碼
                text:獲取只是頁(yè)面展示的內(nèi)容
    //////////////////////////////////////////////
創(chuàng)建一個(gè)元素: $("<標(biāo)簽></標(biāo)簽>")
///////////////////////
文檔操作:
    內(nèi)部插入
        a.append(c):將c插入到a的內(nèi)部(標(biāo)簽體)后面
        a.prepend(c):將c插入到a的內(nèi)部的前面
        
        appendTo
        prependTo
    外部插入
        a.after(c):將c放到a的后面
        a.before(c):將c放到a的前面
        
        a.insertAfter(c)
        a.insertBefore(c)
    刪除
        empty() 清空元素
        remove() 刪除元素



表單對(duì)象屬性過(guò)濾選擇器
        :enabled   可用的
        :disabled  不可用
        :checked    選中的(針對(duì)于單選框和復(fù)選框的)
        :selected   選中的(針對(duì)于下拉選)

十 總結(jié)

后面的幾個(gè)Demo可能不太詳細(xì)庸论,由于我也偷懶职辅,有些看懂了就沒(méi)寫(xiě),這樣對(duì)于快速的知識(shí)灌輸情況下葡公,記憶周期比較短罐农。好在以后還會(huì)再學(xué)一遍,現(xiàn)在我是在預(yù)習(xí)的條件下寫(xiě)的催什,如有不足,后期學(xué)習(xí)時(shí)會(huì)慢慢完善筆記宰睡。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末蒲凶,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子拆内,更是在濱河造成了極大的恐慌旋圆,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,948評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件麸恍,死亡現(xiàn)場(chǎng)離奇詭異灵巧,居然都是意外死亡搀矫,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén)刻肄,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)瓤球,“玉大人,你說(shuō)我怎么就攤上這事敏弃∝韵郏” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 157,490評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵麦到,是天一觀的道長(zhǎng)绿饵。 經(jīng)常有香客問(wèn)我,道長(zhǎng)瓶颠,這世上最難降的妖魔是什么拟赊? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,521評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮粹淋,結(jié)果婚禮上吸祟,老公的妹妹穿的比我還像新娘。我一直安慰自己廓啊,他們只是感情好欢搜,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,627評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著谴轮,像睡著了一般炒瘟。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上第步,一...
    開(kāi)封第一講書(shū)人閱讀 49,842評(píng)論 1 290
  • 那天疮装,我揣著相機(jī)與錄音,去河邊找鬼粘都。 笑死廓推,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的翩隧。 我是一名探鬼主播樊展,決...
    沈念sama閱讀 38,997評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼堆生!你這毒婦竟也來(lái)了专缠?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,741評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤淑仆,失蹤者是張志新(化名)和其女友劉穎涝婉,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體蔗怠,經(jīng)...
    沈念sama閱讀 44,203評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡墩弯,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,534評(píng)論 2 327
  • 正文 我和宋清朗相戀三年吩跋,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片渔工。...
    茶點(diǎn)故事閱讀 38,673評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡锌钮,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出涨缚,到底是詐尸還是另有隱情轧粟,我是刑警寧澤,帶...
    沈念sama閱讀 34,339評(píng)論 4 330
  • 正文 年R本政府宣布脓魏,位于F島的核電站兰吟,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏茂翔。R本人自食惡果不足惜混蔼,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,955評(píng)論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望珊燎。 院中可真熱鬧惭嚣,春花似錦、人聲如沸悔政。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,770評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)谋国。三九已至槽地,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間芦瘾,已是汗流浹背捌蚊。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,000評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留近弟,地道東北人缅糟。 一個(gè)月前我還...
    沈念sama閱讀 46,394評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像祷愉,于是被迫代替她去往敵國(guó)和親窗宦。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,562評(píng)論 2 349

推薦閱讀更多精彩內(nèi)容