日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

JQuery面试题1

發(fā)布時(shí)間:2025/7/14 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JQuery面试题1 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1.說(shuō)下JQuery里面的選擇器及其用法
??ID選擇器,元素選擇器,屬性選擇器,
2.JQuery中常用的方法 ?

方法

描述

hide()

隱藏被選元素

show()

顯示被選元素

toggle()

切換(在隱藏和與顯示之間)被選元素

html(content)

改變被選元素的(內(nèi)部)HTML

append(content)

向被選元素的(內(nèi)部)追加內(nèi)容

css(name,value)

為匹配元素設(shè)置樣式屬性的值

load(url,data,callback)

把遠(yuǎn)程數(shù)據(jù)加載到被選的元素中

3.簡(jiǎn)單的闡述 JS,JQuery 。?
Javascript 是一種由Netscape的LiveScript 發(fā)展而來(lái)的原型化繼承的基于對(duì)象的動(dòng)態(tài)類型的區(qū)分大小寫(xiě)的客戶端腳本語(yǔ)言,主要目的是為了解決服務(wù)端語(yǔ)言,比如Perl,遺留的速度問(wèn)題,為客戶端提供更流暢的瀏覽效果。?
JQuery 是繼prototype之后又一個(gè)優(yōu)秀的Javascript框架,它是輕量級(jí)的JS庫(kù)。它的核心理念就是writer less, do more 。?
4.簡(jiǎn)單介紹JQuery的優(yōu)勢(shì)。

  • 開(kāi)源的、免費(fèi)的
  • 輕量級(jí)的非常靈巧
  • 擁有強(qiáng)大的選擇器
  • 出色的DOM操作的封裝
  • 可靠的事件處理機(jī)制
  • 完善的AJAX
  • 出色的瀏覽器兼容性
  • 鏈?zhǔn)讲僮鞣绞?/span>
  • 隱式迭代
  • 行為層與結(jié)構(gòu)層的分離
  • 豐富的插件支持
  • 完善的文檔說(shuō)明

  • 5.AJAX執(zhí)行流程是什么 ??
    1.通過(guò)JS創(chuàng)建瀏覽器對(duì)象XMLHttpRequest,瀏覽器分為IE和非IE.
    2.設(shè)置回調(diào)函數(shù) onreadystatechange?
    3.客戶端和服務(wù)器建立連接,通過(guò)open("GET/POST",url,ture/false) 打開(kāi)請(qǐng)求
    4.通過(guò)send()發(fā)送請(qǐng)求
    5.服務(wù)器調(diào)用回調(diào)函數(shù),當(dāng)狀態(tài)為4則表示發(fā)送請(qǐng)求成功
    6.處理響應(yīng)數(shù)據(jù):
    1)responseText:作為文本串返回
    2)responseXML:作為Xml文件返回?
    6.你每次的AJAX的請(qǐng)求都訪問(wèn)數(shù)據(jù)庫(kù)嗎?有什么壞處??
    ? ? ? AJAX的一大特點(diǎn)就是我需要這個(gè)數(shù)據(jù)(訪問(wèn)數(shù)據(jù)庫(kù))的時(shí)候才給我,異步提交,就是每次提交服務(wù)器,特別是跟服務(wù)器要數(shù)據(jù)訪問(wèn)數(shù)據(jù)庫(kù)的時(shí)候,要先連接數(shù)據(jù)庫(kù)再SQL查詢處理,再返回到瀏覽器,這個(gè)時(shí)候當(dāng)很多人都訪問(wèn)的時(shí)候,就會(huì)影響服務(wù)器的性能,影響響應(yīng)的時(shí)間。關(guān)鍵要看是否訪問(wèn)頻繁,如果很頻繁,并且數(shù)據(jù)不經(jīng)常變化,那么就可以訪問(wèn)數(shù)據(jù)庫(kù)
    7.如果不用AJAX怎么實(shí)現(xiàn)局部刷新??
    1 用JQuery?
    ? load( url, [data], [callback] ) :載入遠(yuǎn)程 HTML 文件代碼并插入至 DOM 中。
    ? url (String) : 請(qǐng)求的HTML頁(yè)的URL地址。
    ? data (Map) : (可選參數(shù)) 發(fā)送至服務(wù)器的 key/value 數(shù)據(jù)。
    ? callback (Callback) : (可選參數(shù)) 請(qǐng)求完成時(shí)(不需要是success的)的回調(diào)函數(shù)。
    ? ?這個(gè)方法默認(rèn)使用 GET 方式來(lái)傳遞的,如果[data]參數(shù)有傳遞數(shù)據(jù)進(jìn)去,就會(huì)自動(dòng)轉(zhuǎn)換為POST方式的。
    ?2 也可以用iframe
    這里將顯示結(jié)果。?
    8.AJAX有哪些狀態(tài) ?

    狀態(tài)

    描述

    0

    請(qǐng)求未初始化(在調(diào)用 open() 之前)

    1

    請(qǐng)求已提出(調(diào)用 send() 之前)

    2

    請(qǐng)求已發(fā)送(這里通常可以從響應(yīng)得到內(nèi)容頭部)

    3

    請(qǐng)求處理中(響應(yīng)中通常有部分?jǐn)?shù)據(jù)可用,但是服務(wù)器還沒(méi)有完成響應(yīng))

    4

    請(qǐng)求已完成(可以訪問(wèn)服務(wù)器響應(yīng)并使用它)


    9.JQuery中 假設(shè)表單域沒(méi)有id,name 你是如何得到第二個(gè)表單的元素 ??
    ? ? 可以用選擇器里面的eq(1)加上別的選擇器判斷?
    10.JQuery的事件 ?
    ? ? jQuery 事件處理方法是 jQuery 中的核心函數(shù)。
    ? ? ? 事件處理程序指的是當(dāng) HTML 中發(fā)生某些事件時(shí)所調(diào)用的方法。術(shù)語(yǔ)由事件"觸發(fā)"(或"激發(fā)")經(jīng)常會(huì)被使用。

    事件

    描述

    $(doncument).ready(function)

    將函數(shù)綁定到文檔的就緒事件(當(dāng)文檔完成加載時(shí))

    $(selector).clik(function)

    觸發(fā)或?qū)⒑瘮?shù)綁定到被選元素的點(diǎn)擊事件

    $(selector).dblclick

    觸發(fā)或?qū)⒑瘮?shù)綁定到被選元素的雙擊事件

    $(selector).focus(function)

    觸發(fā)或?qū)⒑瘮?shù)綁定到被選元素的獲得焦點(diǎn)事件

    $(selector).mouseover(function)

    觸發(fā)或?qū)⒑瘮?shù)綁定到被選元素的鼠標(biāo)懸停事件


    11.js里只允許一個(gè)onLoad(),在JQuery里怎么弄兩個(gè)??
    window.onload = function(){
    alert("text1");
    };?
    window.onload = function(){
    alert("text2");
    };?
    結(jié)果只輸出第二個(gè) ,?能同時(shí)編寫(xiě)多個(gè) 。?
    12.AJAX的同步與異步 。
    ? ? 舉個(gè)例子:比如你去圖書(shū)館借某種書(shū),可惜圖書(shū)館此書(shū)被借完。這時(shí)可以采用兩種做法。
    ? ? 第一種做法:在圖書(shū)館一直等待,直到有人還書(shū),然后再去吃飯睡覺(jué)。
    ? ?第二種做法:直接跟圖書(shū)館管理員約定,若是有人還書(shū),直接通知你。你則該忙什么忙什么。到時(shí)候會(huì)通知你。
    ? ?而第一種做法就是同步的表現(xiàn),必須等待別人還書(shū)(等待服務(wù)器返回信息)才進(jìn)行其他事情,至死方休。
    ? ?而第二種做法就是異步的表現(xiàn),不耽誤時(shí)間,合理利用時(shí)間高效率做事。
    ? ?Ajax用異步傳輸?shù)暮锰幨翘岣咝? 減少用戶等待時(shí)間, 提高用戶體驗(yàn)度.?
    13.AJAX的回調(diào)函數(shù) 。?
    ? ? ? ?回調(diào)函數(shù)不是由該函數(shù)的實(shí)現(xiàn)方直接調(diào)用,而是在特定的事件或條件發(fā)生時(shí)由服務(wù)器執(zhí)行完成后調(diào)用的,用于對(duì)該事件或條件進(jìn)行響應(yīng)。?
    14.JQuery是怎么用的 ?主要用到了什么??
    ? ? 首先要導(dǎo)入JQuery的包文件(有Min版和未壓縮版),然后在JSP中引入包,接下來(lái)再引入自己的JS。?
    ? ? 主要用到了選擇器和事件 和AJAX。?
    ?15.DWR是什么 ??
    ? ? ? ? ? ? DWR(Direct Web Remoting)是一個(gè)用于改善web頁(yè)面與Java類交互的遠(yuǎn)程服務(wù)器端Ajax開(kāi)源框架,可以幫助開(kāi)發(fā)人員開(kāi)發(fā)包含AJAX技術(shù)的網(wǎng)站。它可以允許在瀏覽器里的代碼使用運(yùn)行在WEB服務(wù)器上的JAVA函數(shù),就像它就在瀏覽器里一樣。可以簡(jiǎn)單說(shuō)是Java實(shí)現(xiàn)的AJAX框架?
    16.JQuery中背景顏色你是怎么設(shè)置的 ??
    ? ? ? $(document.body).css( "background", "black" );
    17.AJAX提交數(shù)據(jù)的時(shí)候使用同步還是異步??
    ? ? 異步。?
    18.你懂AJAX的原理和它的框架嗎 ??
    ? ? ?Ajax的原理簡(jiǎn)單來(lái)說(shuō)通過(guò)XmlHttpRequest對(duì)象來(lái)向服務(wù)器發(fā)異步請(qǐng)求,從服務(wù)器獲得數(shù)據(jù),然后用Javascript來(lái)操作DOM從而更新頁(yè)面 。?
    ? ? AJAX框架主要有ajax.dll,ajaxpro.dll,magicajax.dll 以及微軟的atlas框架?
    19.JQuery隱藏一個(gè)DIV使用什么方法?,調(diào)用什么方法拿到父無(wú)素??
    ? ?隱藏一個(gè)DIV的方法有:
    ? ?hide() 隱藏顯示的元素 ; 如果選擇的元素是隱藏的,這個(gè)方法將不會(huì)發(fā)生任何改變。
    ? ? ?toggle() 如果元素是可見(jiàn)的,切換為隱藏的;如果元素是隱藏的,切換為可見(jiàn)的。?
    拿到父元素的方法有:
    parent()取得一個(gè)包含著所有匹配元素的唯一父元素的元素集合。
    ? ?parents()取得一個(gè)包含著所有匹配元素的祖先元素的元素集合(不包含根元素)。?


    20.做一個(gè)鼠標(biāo)點(diǎn)擊DIV動(dòng)畫(huà),變大變小的那種,說(shuō)一下思路。
    <td id="test"></td> 用JQuery代碼替換文字和文字的顏色 。
    ? ? ??文字的替換可以JQuery對(duì)象的text(),文字的顏色attr,如果是css,我們css()

    21.AJAX()怎么返回后臺(tái)的值。配置及作用。
    ? ??在回調(diào)函數(shù)里面返回后臺(tái)的值,可以用xmlHttpRequest的responseText 或responseXml獲得?

    22.JQuery如何調(diào)用事件,如何獲取頁(yè)面元素,如何抓去樣式 ??
    調(diào)用事件:最常用的是為元素添加onclick元素屬性的方式來(lái)添加事件?,使用各種選擇器來(lái)獲取元素,使用css()來(lái)抓取樣式
    23.JQuery怎樣獲取json的數(shù)據(jù)??
    ? ?a. 使用了require JS 框架
    ? ?b. 用Jquery的兩種方法獲取后臺(tái)數(shù)據(jù)
    ? 1)ajax 方法,傳回的都是json數(shù)據(jù)?
    ? ?2)getJSON, 直接封裝了一些參數(shù){command : GetRegsiterJsonData}
    24.AJAX發(fā)送的請(qǐng)求的協(xié)議是什么 ?
    ? ? HTTP
    25.JQuery的clone方法參數(shù)加true和不加true的區(qū)別 ?
    ? ? ? clone(true)方是復(fù)制一個(gè)元素及其所有事件,
    ? ? clone()方法是復(fù)制一個(gè)元素,不包含其所有事件?
    26.在頁(yè)面動(dòng)態(tài)顯示一個(gè)時(shí)間。
    ?
    27.AJAX的緩存問(wèn)題怎么解決??
    方法一:?
    在ajax發(fā)送請(qǐng)求前加上 :
    ? ? ?xmlHTTP.setRequestHeader("If-Modified-Since","0");?
    方法二:
    服務(wù)器端代碼加入:
    ? ? response.setHeader("Cache-Control", "no-cache, must-revalidate");
    方法三:
    ? ? 用JavaScript在Ajax提交的時(shí)候加入一個(gè)隨機(jī)數(shù)作為URL中的一個(gè)參數(shù)。req.open(url + "&" + Math.random).?
    28.JQuery怎么拿頁(yè)面的值、屬性。?
    ? ? ?用attr函數(shù),val
    29.AJAX怎么用的,怎么把數(shù)據(jù)提交到后臺(tái)的?
    ? 通過(guò)open函數(shù)打開(kāi)連接,通過(guò)send方法發(fā)送數(shù)據(jù)
    30.在寫(xiě)下js和JQuery如何獲取頁(yè)面元素的?

    ? ? ??js可以用document.getElementById或者document.getElementByName,但是JQuery就是比較強(qiáng)大,可以用各種選擇器來(lái)獲取,最主要的還是ID選擇器("#id");
    31.講下JQuery里面的AJAX幾種實(shí)現(xiàn)和比較方式

    有l(wèi)oad(),post(),get(),ajax(),getJson()等,詳細(xì)說(shuō)明具體實(shí)現(xiàn),

    load是把遠(yuǎn)程url地址獲取后的html代碼直接插入到當(dāng)前元素里面,不需要寫(xiě)回調(diào)函數(shù)
    $.get()是把遠(yuǎn)程url獲取的信息通過(guò)回調(diào)函數(shù)來(lái)處理,通過(guò)get方式提交?
    $.post()是把遠(yuǎn)程url獲取的信息通過(guò)回調(diào)函數(shù)來(lái)處理,通過(guò)post方式提交
    $.ajax是最復(fù)雜的一個(gè)ajax執(zhí)行函數(shù),它是$.get和$.post的基礎(chǔ)??

    32.講下AJAX的缺點(diǎn)
    ? ?不支持回退按鈕,對(duì)于手機(jī)移動(dòng)設(shè)備不支持,數(shù)據(jù)量太大數(shù)據(jù)解析比較麻煩?


    轉(zhuǎn)載于:https://www.cnblogs.com/t0404/p/10291006.html

    總結(jié)

    以上是生活随笔為你收集整理的JQuery面试题1的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。