好程式設計師web前端教程分享Jquery常見面試題

好程式設計師IT發表於2019-10-29

  好程式設計師web 前端教程分享 Jquery 常見面試題。小編為大家準備了前端面試題系列,透過 Web 知識的整理以及經驗的總結,希望能幫到更多的前端面試者。

 

  1 jQuery 庫中的 $() 是什麼 ?

 

  $() 函式是 jQuery() 函式的別稱。 $() 函式用於將任何物件包裹成 jQuery 物件,接著你就被允許呼叫定義在 jQuery 物件上的多個不同方法。你可以將一個選擇器字串傳入 $() 函式,它會返回一個包含所有匹配的 DOM 元素陣列的 jQuery 物件。

 

  2 、如何找到所有 HTMLselect 標籤的選中項 ?

 

  $('[name=selectname]:selected')

 

  3 $(this) this 關鍵字在 jQuery 中有何不同 ?

 

  $(this) 返回一個 jQuery 物件,你可以對它呼叫多個 jQuery 方法,比如用 text() 獲取文字,用 val() 獲取值等等。

 

  而this 代表當前元素,它是 JavaScript 關鍵詞中的一個,表示上下文中的當前 DOM 元素。你不能對它呼叫 jQuery 方法,直到它被 $() 函式包裹,例如 $(this)

 

  4 jquery 怎麼移除標籤 onclick 屬性 ?

 

  獲得a 標籤的 onclick 屬性 :$("a").attr("onclick")

 

  刪除onclick 屬性: $("a").removeAttr("onclick")

 

  設定onclick 屬性: $("a").attr("onclick","test();")

 

  5 jquery addClass removeClass toggleClass 的使用。

 

  $(selector).addClass(class) :為每個匹配的元素新增指定的類名

 

  $(selector).removeClass(class) :從所有匹配的元素中刪除全部或者指定的類,刪除 class 中某個值 ;

 

  $(selector).toggleClass(class) :如果存在 ( 不存在 ) 就刪除 ( 新增 ) 一個類

 

  $(selector).removeAttr(class); 刪除 class 這個屬性 ;

 

  6 JQuery 有幾種選擇器 ?

 

  (1) 、基本選擇器: #id class,element,*;

 

  (2) 、層次選擇器: parent>child prev+next prev~siblings

 

  (3) 、基本過濾器選擇器: :first :last :not :even :odd :eq :gt :lt

 

  (4) 、內容過濾器選擇器: :contains :empty :has :parent

 

  (5) 、可見性過濾器選擇器: :hidden :visible

 

  (6) 、屬性過濾器選擇器: [attribute] [attribute=value] [attribute!=value] [attribute^=value] [attribute$=value] [attribute*=value]

 

  (7) 、子元素過濾器選擇器: :nth-child :first-child :last-child :only-child

 

  (8) 、表單選擇器: :input :text :password :radio :checkbox :submit ;

 

  (9) 、表單過濾器選擇器: :enabled :disabled :checked :selected

 

  7 jQuery 中的 Delegate() 函式有什麼作用 ?

 

  delegate() 會在以下兩個情況下使用到:

 

  1) 、如果你有一個父元素,需要給其下的子元素新增事件,這時你可以使用 delegate() 了,程式碼如下:

 

  $("ul").delegate("li","click",function(){$(this).hide();});

 

  2) 、當元素在當前頁面中不可用時,可以使用 delegate()

 

  8 $(document).ready() 方法和 window.onload 有什麼區別 ?

 

  (1) window.onload 方法是在網頁中所有的元素 ( 包括元素的所有關聯檔案 ) 完全載入到瀏覽器後才執行的。

 

  (2) $(document).ready() 方法可以在 DOM 載入就緒時就對其進行操縱,並呼叫執行繫結的函式。

 

  9 、如何用 jQuery 禁用瀏覽器的前進後退按鈕 ?

 

  實現程式碼如下:

 

  <scripttype="text/javascript"language="javascript">

 

  $(document).ready(function(){

 

  window.history.forward(1);

 

  //ORwindow.history.forward(-1);

 

  });

 

  </script>

 

  10 jquery $.get() 提交和 $.post() 提交有區別嗎 ?

 

  相同點:都是非同步請求的方式來獲取服務端的資料;

 

  異同點:

 

  1 、請求方式不同: $.get() 方法使用 GET 方法來進行非同步請求的。 $.post() 方法使用 POST 方法來進行非同步請求的。

 

  2 、引數傳遞方式不同: get 請求會將引數跟在 URL 後進行傳遞,而 POST 請求則是作為 HTTP 訊息的實體內容傳送給 Web 伺服器的,這種傳遞是對使用者不可見的。

 

  3 、資料傳輸大小不同: get 方式傳輸的資料大小不能超過 2KB POST 要大的多

 

  4 、安全問題: GET 方式請求的資料會被瀏覽器快取起來,因此有安全問題。

 

  11 、寫出一個簡單的 $.ajax() 的請求方式 ?

 

  $.ajax({

 

  url:'

 

  type:'POST',

 

  data:data,

 

  cache:true,

 

  headers:{},

 

  beforeSend function(){},

 

  success:function(){},

 

  error:function(){},

 

  complete:function(){}

 

  });

 

  ja


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69913892/viewspace-2661753/,如需轉載,請註明出處,否則將追究法律責任。

相關文章