一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

【JavaWeb】84:jQuery框架

 劉小愛v 2020-07-07

今天是劉小愛自學Java的第84天。

感謝你的觀看,謝謝你。

話不多說,繼續(xù)前端的學習:

jQuery是一個框架,在學jQuery之前可以先思考一個問題:如何去理解框架?

其實從某種意義上來說就是代碼的封裝。

對于使用者來說只需要調(diào)用框架里的方法或?qū)傩詫崿F(xiàn)某種功能即可。

至于具體是如何實現(xiàn)的?使用者不用管,框架里面會實現(xiàn)。

所以一般情況下,框架編寫的越復雜,其使用也就越簡單。

一、自定義js文件

既然有現(xiàn)成的框架可以用,為何還要自定義?

很簡單,學習階段,知其然也要知其所以然,先看下面的代碼:

代碼實現(xiàn)的功能也很簡單:

給div標簽添加了一個內(nèi)容:“劉小愛”;給a便簽添加了一個超鏈接。

也就是昨天剛學的DOM編程,其中涉及到getElementById()方法的使用。

那么現(xiàn)在問題來了:

如果一個html中需要用到很多次這樣的功能,該方法要使用很多遍。

既然如此,為何不將該方法封裝起來?

①自定義一個js文件

將getElementById()封裝到一個js方法里面,并且在js中使用$代替該方法名。

這樣在使用時直接使用$即可,都不用記方法名,特別的方便。

②使用自定義的js文件

先在HTML中導入對應的js文件路徑,再使用:

現(xiàn)在使用的時候,就直接用美元符號$+對應參數(shù)即可,特別的簡便。

那么現(xiàn)在問題又來了:

上述舉的例子只是說到了根據(jù)id獲取元素的方法,也就是getElementById()。

如果是標簽名,類名就沒法使用了。那如何解決這個問題?

前幾天學CSS的時候,它是使用各種選擇器來定位對應的標簽的。

同樣的道理,在$符號中填入對應的“選擇器”參數(shù),即可獲取對應的標簽元素。

當然其具體如何實現(xiàn)的還不清楚,反正jQuery框架確實能實現(xiàn)該功能。

二、jQuery框架

網(wǎng)上搜索jQuery下載,即可下載到各個版本的jQuery。

版本從1.11.1到3.5.1不等,不過版本不一定越新越好,看實際需求。百度用的jQuery版本還是1點幾呢。

并且要知道XP都出來近20年了,還不是有很多公司很多人用XP系統(tǒng)。

既然如此,那我還是用最新版3.5.1吧。

導入jQuery就不再詳細闡述了。

直接創(chuàng)建一個js包,將下載的jQuery庫放進js包,再導入對應路徑即可。

然后就可以直接使用jQuery了:

①js和jQuery方法區(qū)別

jQuery和js都有自己特有的操作方法。比如對于標簽文本的修改:

  • jQuery對象的方法:jq.text("劉小愛")。
  • js對象的方法:js.innerText="劉小愛"。

兩者之間不能弄混,只能各自用自己的。

②jQuery的兩種使用方式

根據(jù)id修改對應標簽的內(nèi)容,#myDiv2是id選擇器。

jQuery(“#myDiv2”)可以獲取對應標簽。

$(“#myDiv3”)也可以獲取對應id標簽。

這兩種方法其實是一回事,說白了其底層封裝的時候就是“$$代替了jQuery這個方法名。

三、jQuery與js之間的轉(zhuǎn)換

jQuery對象和js對象之間是可以互相轉(zhuǎn)換的。

如何判斷它們之間完成了轉(zhuǎn)換?

它們各自有自己特有的API,就是對于初學者來說,特容易將它們的方法弄混。

②jQuery對象轉(zhuǎn)換成js對象

通過jQuery("#myDiv1")獲取的就是jQuery對象,這不用多說。

那如何將其轉(zhuǎn)換成js對象?

jq[0]可以調(diào)用js的API,所以jq[0]就是已經(jīng)被轉(zhuǎn)換成js對象了。

jQuery對象其實是一個js對象數(shù)組,所以可以直接通過索引來取js對象。

為何是數(shù)組?這也好理解:

比如說這里是用的id選擇器,自然只有一個js對象了,jq[0]也就是js對象了。

如果使用的是標簽選擇器呢?獲取的就是很多個js對象,也就是js數(shù)組了。

③js對象轉(zhuǎn)換成jQuery對象

通過document.getElementById("myDiv2")獲取的也就是js對象,這不用多說。

那如何將js對象轉(zhuǎn)換成jQuery對象?

直接使用$(js)便可將js對象轉(zhuǎn)換成jQuery對象。

以上便是js和jQuery之間的轉(zhuǎn)換,其中頁面加載事件它們之間也能轉(zhuǎn)換。

①js方式的加載事件

window.onload這就是一個加載事件。

再將該事件和后面的匿名函數(shù)聯(lián)系起來。

也就是說要等到頁面加載完成之后,再執(zhí)行加載事件對應的函數(shù)。

如果是使用js方式的加載事件,那么后面的加載事件會覆蓋掉前面的加載事件。

所以運行結果第一個div標簽的內(nèi)容才沒有被修改。

②jQuery方式的加載事件

其格式為:$(function(){})。也就是jQuery方法中參數(shù)即為一個匿名函數(shù)

使用這種方式的話就不會出現(xiàn)覆蓋現(xiàn)象了,無論多少個加載事件都行。

其實也好理解。jQuery方法對其的處理是將function(){}作為window.onload中匿名函數(shù)的一個參數(shù)。

所以無論多少個$(function(){}),其對應的都是同一個加載事件(window.onload),只是參數(shù)不同。

最后

謝謝你的觀看。

如果可以的話,麻煩幫忙點個贊,謝謝你。

    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    国产av天堂一区二区三区粉嫩| 粉嫩国产一区二区三区在线| 97人妻精品一区二区三区男同| 亚洲夫妻性生活免费视频| 婷婷激情五月天丁香社区| 深夜视频在线观看免费你懂| 久久精品一区二区少妇| 99热在线精品视频观看| 欧美一级黄片免费视频| 欧美日韩一区二区午夜| 亚洲精品福利视频你懂的| 91欧美亚洲精品在线观看| 精品少妇人妻av免费看| 欧美丰满大屁股一区二区三区| 欧美一级黄片免费视频 | 青青久久亚洲婷婷中文网| 国产午夜精品美女露脸视频| 麻豆国产精品一区二区| 国产三级视频不卡在线观看| 午夜久久精品福利视频| 午夜精品国产一区在线观看| 欧美二区视频在线观看| 国产成人精品在线一区二区三区| 国产内射一级一片内射高清视频 | 日本一本在线免费福利| 中文文精品字幕一区二区| 偷拍洗澡一区二区三区| 国产欧美性成人精品午夜| 日韩欧美国产高清在线| 91蜜臀精品一区二区三区| 免费特黄欧美亚洲黄片| 青草草在线视频免费视频| 人妻一区二区三区在线| 亚洲a级一区二区不卡| 最新午夜福利视频偷拍| 欧美亚洲另类久久久精品| 国产精品国产亚洲看不卡| 久久精品福利在线观看| 欧美久久一区二区精品| 日本理论片午夜在线观看| 日本不卡一本二本三区|