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()方法可以停止冒泡。