2020-03-21(jQuery面試題)

1、你在公司是怎么用jquery的?

????在項目中是怎么用的是看看你有沒有項目經(jīng)驗(根據(jù)自己的實際情況來回答) 你用過的選擇器啊,動畫啊,表單啊,ajax事件等

????配置Jquery環(huán)境 下載jquery類庫 在jsp頁面引用jquery類庫即可

????????<script type="text/javascript" src="jquery/jquery-1.7.2.min.js"/></script>

????????<script>$(function(){ });</script>

2 、你為什么要使用jquery?

????因為jQuery是輕量級的框架,大小不到30kb,它有強大的選擇器,出色的DOM操作的封裝,有可靠的事件處理機(jī)制(jQuery在處理事件綁定的時候相當(dāng)?shù)目煽?,完善的ajax(它的ajax封裝的非常的好,不需要考慮復(fù)雜瀏覽器的兼容性和XMLHttpRequest對象的創(chuàng)建和使用的問題。) 出色的瀏覽器的兼容性。而且支持鏈?zhǔn)讲僮?,隱式迭代。行為層和結(jié)構(gòu)層的分離,還支持豐富的插件,jquery的文檔也非常的豐富,開源。

3、你知道jquery中的選擇器嗎,請講一下有哪些選擇器?

????選擇器大致分為:基本選擇器,層次選擇器,過濾選擇器,表單選擇器

????jQuery選擇器支持CSS里的選擇器,

????jQuery選擇器可用來添加樣式和添加相應(yīng)的行為

????CSS 中的選擇器是只能添加相應(yīng)的樣式

4、?jquery對象和dom對象是怎樣轉(zhuǎn)換的?

????jquery轉(zhuǎn)DOM對象:jQuery 對象是一個數(shù)組對象,可以通過[index]的豐富得到相應(yīng)的DOM對象,還可以通過get[index]去得到相應(yīng)的DOM對象。

????DOM對象轉(zhuǎn)jQuery對象:$(DOM對象)

5??你是如何使用jquery中的ajax的?

????如果是一些常規(guī)的ajax程序的話,使用load(),$.get(),$.post(),就可以搞定了,一般我會使用的是$.post() 方法。如果需要設(shè)定beforeSend(提交前回調(diào)函數(shù)),error(失敗后處理),success(成功后處理)及complete(請求完成后處理)回調(diào)函數(shù)等,這個時候我會使用$.ajax()

????同步和異步區(qū)別、

????????同步:等待后端返回數(shù)據(jù)后 才能繼續(xù)執(zhí)行代碼 一次執(zhí)行運行 一個線程 ?其他的線程 阻塞 ?業(yè)務(wù)卡頓

????????異步 :不等待后端返回數(shù)據(jù) 就可以繼續(xù)執(zhí)行代碼 可以運行多個線程 多數(shù)據(jù)返回后 ?自動調(diào)用success回調(diào)函數(shù) ?業(yè)務(wù)代碼 在success完成

????Ajax常用的數(shù)據(jù)類型有 xml和json 普遍使用json

????????網(wǎng)頁卡頓 是什么原因 怎么解決 ?(使用了同步 將同步代碼修改為異步 將業(yè)務(wù)邏輯轉(zhuǎn)譯到success方法)

6?、jquery中$.get()提交和$.post()提交有區(qū)別嗎?

????一: $.get() 方法使用GET方法來進(jìn)行異步請求的,$.post() 方法使用POST方法來進(jìn)行異步請求的。

????二: get請求會將參數(shù)跟在URL后進(jìn)行傳遞,而POST請求則是作為HTTP消息的實體內(nèi)容發(fā)送給Web服務(wù)器的,這種傳遞是對用戶不可見的。

????三:get方式傳輸?shù)臄?shù)據(jù)大小不能超過2KB 而POST要大的多

????四:GET 方式請求的數(shù)據(jù)會被瀏覽器緩存起來,因此有安全問題。

7、你使用過jquery中的動畫嗎,是怎樣用的?

????使用過。

????????hide() 和 show() 同時修改多個樣式屬性。像高度,寬度,不透明度。 fadeIn() 和fadeOut() fadeTo() 只改變不透明度

????????slideUp() 和 slideDown() slideToggle() 只改變高度

????????animate() 屬于自定義動畫的方法.

8、你使用過jquery中的插件嗎?

????使用過,easyui

9、你在jquery中使用過哪些插入節(jié)點的方法,它們的區(qū)別是什么??

????append(),appendTo(),prepend(),prependTo(),after(),insertAfter() ???before(),insertBefore() ???

????內(nèi)添加

????????1.append在文檔內(nèi)添加元素

????????2.appendTo()把匹配的元素添加到對象里

????????3.prepend()在元素前添加

????????4.prependTo()把匹配的元素添加到對象前

??????外添加 ?

????????1.after()在元素之后添加

????????2.before()在元素之前添加

????????3.insertAfter()把匹配元素在對象后添加

????????4.insertBefore()把匹配元素在對象前添加

10、jquery中如何來獲取或和設(shè)置屬性?

????jQuery中可以用attr()方法來獲取和設(shè)置元素屬性,removeAttr() 方法來刪除元素屬性

11、如何來設(shè)置和獲取HTML 和文本的值?

????html()方法 類似于innerHTML屬性 可以用來讀取或者設(shè)置某個元素中的HTML內(nèi)容注意:html() 可以用于xhtml文檔,不能用于xml文檔

????Text() 類似于innerText屬性 可以用來讀取或設(shè)置某個元素中文本內(nèi)容。

????val() 可以用來設(shè)置和獲取元素的值

12、你jquery中有哪些方法可以遍歷節(jié)點?

????children() 取得匹配元素的子元素集合,只考慮子元素不考慮后代元素 ?

????next() 取得匹配元素后面緊鄰的同輩元素

?????prev() 取得匹配元素前面緊鄰的同輩元素

?????siblings() 取得匹配元素前后的所有同輩元素

?????closest() 取得最近的匹配元素

?????find() 取得匹配元素中的元素集合 包括子代和后代

13、你在ajax中使用過JSON嗎,你是如何用的?

????使用過,在$.getJSON()方法的時候就是從后來返回的json字符串轉(zhuǎn)換成js的json對象 。

14、$(document).ready() ?$(function({}))方法和window.onload有什么區(qū)別?

????1 window.onload方法是在網(wǎng)頁中所有的元素(包括元素的所有關(guān)聯(lián)文件)完全加載到瀏覽器后才執(zhí)行的,只執(zhí)行一次

????2 $(document).ready() 方法可以在DOM載入就緒時就對其進(jìn)行操縱,并調(diào)用執(zhí)行綁定的函數(shù),可執(zhí)行多次

15、jQuery是如何處理緩存的?

????要處理緩存就是禁用緩存.

????????1 通過$.post() 方法來獲取數(shù)據(jù),那么默認(rèn)就是禁用緩存的。

????????2 通過$.get()方法 來獲取數(shù)據(jù),可以通過設(shè)置時間戳來避免緩存。

????????????可以在URL后面加上+(+new Date)

????????????例?$.get('ajax.xml?'+(+new Date),function () { //內(nèi)容 });

????????3 通過$.ajax 方法來獲取數(shù)據(jù),只要設(shè)置cache:false即可。

16、你讀過有關(guān)于jQuery的書嗎?

????《jquery基礎(chǔ)教程》,《jquery實戰(zhàn)》,《鋒利的jquery》,《巧用jquery》,《jQuery用戶界面庫學(xué)習(xí)指南》等、

17、radio單選組的第二個元素為當(dāng)前選中值,該怎么去?。?/h2>

?????$('input[type=radio]')[1].checked = true;

18、你使用過哪些數(shù)據(jù)格式,它們各有什么特點?

????HTML格式 ,JSON格式,javascript格式,XML格式

????HTML片段提供外部數(shù)據(jù)一般來說是最簡單的。

????如果數(shù)據(jù)需要重用,而且其他應(yīng)用程序也可能一次受到影響,那么在性能和文件大小方面具有優(yōu)勢的JSON通常是不錯的選擇。

????而當(dāng)遠(yuǎn)程應(yīng)用程序未知時,XML則能夠為良好的互操作性提供最可靠的保證。

19、jQuery 能做什么?

????1 獲取頁面的元素

????2 修改頁面的外觀

????3 改變頁面的內(nèi)容

????4 響應(yīng)用戶的頁面操作

????5 為頁面添加動態(tài)效果

????6 無需刷新頁面,即可以從服務(wù)器獲取信息

????7 簡化常見的javascript任務(wù)

20、在ajax中發(fā)送data主要有幾種方式? ?id=1&

????三種,html拼接的,json數(shù)組,form表單經(jīng)serialize()序列化的。

21、jQuery中的hover()和toggle()有什么區(qū)別?

????hover()和toggle()都是jQuery中兩個合成事件。

????hover()方法用于模擬光標(biāo)懸停事件。

????toggle()方法是連續(xù)點擊事件。

22、你知道jQuery中的事件冒泡嗎,它是怎么執(zhí)行的,何如來停止冒泡事件?

????知道, 事件冒泡是從里面的往外面開始觸發(fā)。

????在jQuery中提供了stopPropagation()方法可以停止冒泡。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1 你在公司是怎么用jquery的? 答:在項目中是怎么用的是看看你有沒有項目經(jīng)驗(根據(jù)自己的實際情況來回答) 你...
    山豆山豆閱讀 8,754評論 0 43
  • 1.JQuery 基礎(chǔ) 改變web開發(fā)人員創(chuàng)造搞交互性界面的方式。設(shè)計者無需花費時間糾纏JS復(fù)雜的高級特性。 1....
    LaBaby_閱讀 1,277評論 0 1
  • 1.JQuery 基礎(chǔ) 改變web開發(fā)人員創(chuàng)造搞交互性界面的方式。設(shè)計者無需花費時間糾纏JS復(fù)雜的高級特性。 1....
    LaBaby_閱讀 1,512評論 0 2
  • 前端開發(fā)面試題 面試題目: 根據(jù)你的等級和職位的變化,入門級到專家級,廣度和深度都會有所增加。 題目類型: 理論知...
    怡寶丶閱讀 2,694評論 0 7
  • 第一章 入門 基本功能:訪問和操作 dom 元素,控制頁面樣式,對頁面的事件處理,與ajax完美結(jié)合,有豐富的插件...
    X_Arts閱讀 1,153評論 0 2

友情鏈接更多精彩內(nèi)容