jQuery總結01_jq的基本概念+選擇器

jQuery基本概念

學習目標:學會如何使用jQuery,掌握jQuery的經常使用api,可以使用jQuery實現常見的效果。javascript

 

爲何要學習jQuery?

【01-讓div顯示與設置內容.html】css

使用javascript開發過程當中,有許多的缺點:html

1. 查找元素的方法太少,麻煩。
2. 遍歷僞數組很麻煩,一般要嵌套一大堆的for循環。
3. 有兼容性問題。
4. 想要實現簡單的動畫效果,也很麻煩
5. 代碼冗餘。

 

jQuery初體驗

【02-讓div顯示與設置內容.html】java

$(document).ready(function () {
    $("#btn1").click(function () {
        //隱式迭代:偷偷的遍歷,在jQuery中,不須要手動寫for循環了,會自動進行遍歷。
        $("div").show(200);
    });
​
    $("#btn2").click(function () {
        $("div").text("我是內容");
    });
});

點總結:jquery

1. 查找元素的方法多種多樣,很是靈活
2. 擁有隱式迭代特性,所以再也不須要手寫for循環了。
3. 徹底沒有兼容性問題。
4. 實現動畫很是簡單,並且功能更加的強大。
5. 代碼簡單、粗暴。

 

沒有對比,就沒有傷害,有了對比,到處戳中要害。api

 

什麼是jQuery?

jQuery的官網 http://jquery.com/ jQuery就是一個js庫,使用jQuery的話,會比使用JavaScript更簡單。數組

js庫:把一些經常使用到的方法寫到一個單獨的js文件,使用的時候直接去引用這js文件就能夠了。(animate.js、common.js)瀏覽器

 

咱們知道了,jQuery其實就是一個js文件,裏面封裝了一大堆的方法方便咱們的開發,其實就是一個增強版的common.js,所以咱們學習jQuery,其實就是學習jQuery這個js文件中封裝的一大堆方法。dom

 

jQuery的版本

官網下載地址:http://jquery.com/download/ jQuery版本有不少,分爲1.x 2.x 3.x函數

 

大版本分類:

1.x版本:可以兼容IE678瀏覽器
2.x版本:不兼容IE678瀏覽器
1.x和2.x版本jquery都再也不更新版本了,如今只更新3.x版本。

3.x版本:不兼容IE678,更加的精簡(在國內不流行,由於國內使用jQuery的主要目的就是兼容IE678)

 

關於壓縮版和未壓縮版

jquery-1.12.4.min.js:壓縮版本,適用於生產環境,由於文件比較小,去除了註釋、換行、空格等東西,可是基本沒有顆閱讀性。
jquery-1.12.4.js:未壓縮版本,適用於學習與開發環境,源碼清晰,易閱讀。

 

jQuery的入口函數

使用jQuery的三個步驟:

1. 引入jQuery文件
2. 入口函數
3. 功能實現

 

關於jQuery的入口函數:

//第一種寫法
$(document).ready(function() {
    
});
//第二種寫法
$(function() {
    
});

jQuery入口函數與js入口函數的對比

1. JavaScript的入口函數要等到頁面中全部資源(包括圖片、文件)加載完成纔開始執行。
2. jQuery的入口函數只會等待文檔樹加載完成就開始執行,並不會等待圖片、文件的加載。

 

jQuery對象與DOM對象的區別(重點)

1. DOM對象:使用JavaScript中的方法獲取頁面中的元素返回的對象就是dom對象。
2. jQuery對象:jquery對象就是使用jquery的方法獲取頁面中的元素返回的對象就是jQuery對象。
3. jQuery對象其實就是DOM對象的包裝集(包裝了DOM對象的集合(僞數組))
4. DOM對象與jQuery對象的方法不能混用。

 

DOM對象轉換成jQuery對象:【聯想記憶:花錢】

var $obj = $(domObj);
// $(document).ready(function(){});就是典型的DOM對象轉jQuery對象

jQuery對象轉換成DOM對象:

var $li = $(「li」);
//第一種方法(推薦使用)
$li[0]
//第二種方法
$li.get(0)

【練習:隔行變色案例.html】

 

選擇器

什麼是jQuery選擇器

jQuery選擇器是jQuery爲咱們提供的一組方法,讓咱們更加方便的獲取到頁面中的元素。注意:jQuery選擇器返回的是jQuery對象。

jQuery選擇器有不少,基本兼容了CSS1到CSS3全部的選擇器,而且jQuery還添加了不少更加複雜的選擇器。【查看jQuery文檔】

jQuery選擇器雖然不少,可是選擇器之間能夠相互替代,就是說獲取一個元素,你會有不少種方法獲取到。因此咱們平時真正能用到的只是少數的最經常使用的選擇器。

 

基本選擇器

名稱 用法 描述
ID選擇器 $(「#id」); 獲取指定ID的元素
類選擇器 $(「.class」); 獲取同一類class的元素
標籤選擇器 $(「div」); 獲取同一類標籤的全部元素
並集選擇器 $(「div,p,li」); 使用逗號分隔,只要符合條件之一就可。
交集選擇器 $(「div.redClass」); 獲取class爲redClass的div元素

總結:跟css的選擇器用法如出一轍。

 

層級選擇器

名稱 用法 描述
子代選擇器 $(「ul>li」); 使用>號,獲取兒子層級的元素,注意,並不會獲取孫子層級的元素
後代選擇器 $(「ul li」); 使用空格,表明後代選擇器,獲取ul下的全部li元素,包括孫子等

 

跟CSS的選擇器如出一轍。

過濾選擇器

這類選擇器都帶冒號:

名稱 用法 描述
:eq(index) $(「li:eq(2)」).css(「color」, 」red」); 獲取到的li元素中,選擇索引號爲2的元素,索引號index從0開始。
:odd $(「li:odd」).css(「color」, 」red」); 獲取到的li元素中,選擇索引號爲奇數的元素
:even $(「li:even」).css(「color」, 」red」); 獲取到的li元素中,選擇索引號爲偶數的元素

【案例:隔行變色】

篩選選擇器(方法)

篩選選擇器的功能與過濾選擇器有點相似,可是用法不同,篩選選擇器主要是方法。

名稱 用法 描述
children(selector) $(「ul」).children(「li」) 至關於$(「ul>li」),子類選擇器
find(selector) $(「ul」).find(「li」); 至關於$(「ul li」),後代選擇器
siblings(selector) $(「#first」).siblings(「li」); 查找兄弟節點,不包括本身自己。
parent() $(「#first」).parent(); 查找父親
eq(index) $(「li」).eq(2); 至關於$(「li:eq(2)」),index從0開始
next() $(「li」).next() 找下一個兄弟
prev() $(「li」).prev() 找上一次兄弟
【案例:下拉菜單】this+children+mouseenter+mouseleave
【案例:突出展現】siblings+find
【案例:手風琴】next+parent
【案例:淘寶精品】index+eq
相關文章
相關標籤/搜索