jQuery經典面試題及答案精選

jQuery是一款非常流行的Javascript框架,如果你想要從事Web前端開發這個崗位,那麼jQuery是你必須掌握而且能夠熟練應用的一門技術。本文整理了一些關於jQuery的經典面試題及答案,由上海java培訓機構——青大實訓分享給正要面試Web開發崗位的同學。


問題:jQuery的美元符號$有什麼作用?

 

回答:其實美元符號$只是”jQuery”的別名,它是jQuery的選擇器,如下代碼:

 

Html代碼 
  1. $(document).ready(function(){  
  2.    
  3. });  

 

 

當然你也可以用jQuery來代替$,如下代碼:

 

Html代碼 
  1. jQuery(document).ready(function(){  
  2.    
  3. });  

jQuery中就是通過這個美元符號來實現各種靈活的DOM元素選擇的,例如$(“#main”)即選中id爲main的元素。

 

問題:body中的onload()函數和jQuery中的document.ready()有什麼區別?

 

回答:onload()和document.ready()的區別有以下兩點:

 

1、我們可以在頁面中使用多個document.ready(),但只能使用一次onload()。

2、document.ready()函數在頁面DOM元素加載完以後就會被調用,而onload()函數則要在所有的關聯資源(包括圖像、音頻)加載完畢後纔會調用。

 

問題:jQuery中有哪幾種類型的選擇器?

 

回答:從我自己的角度來講,可以有3種類型的選擇器,如下:

 

1、基本選擇器:直接根據id、css類名、元素名返回匹配的dom元素。

2、層次選擇器:也叫做路徑選擇器,可以根據路徑層次來選擇相應的DOM元素。

3、過濾選擇器:在前面的基礎上過濾相關條件,得到匹配的dom元素。

 

問題:請使用jQuery將頁面上的所有元素邊框設置爲2px寬的虛線?

 

回答:這正是jQuery選擇器上場的時候了,代碼如下:

 

Html代碼 
  1. <script language="javascript" type="text/javascript">  
  2.    
  3.          $("*").css("border", "2px dotted red");   
  4.    
  5. </script>  

問題:當CDN上的jQuery文件不可用時,該怎麼辦?

 

回答:爲了節省帶寬和腳本引用的穩定性,我們會使用CDN上的jQuery文件,例如google的jquery cdn服務。但是如果這些CDN上的jQuery服務不可用,我們還可以通過以下代碼來切換到本地服務器的jQuery版本:

Html代碼 
  1. <script type="text/javascript" language="Javascript" src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.4.1.min.js "></script>  
  2.    
  3. <script type='text/javascript'>//<![CDATA[ 
  4.   
  5. if (typeof jQuery == 'undefined') { 
  6.   
  7. document.write(unescape("%3Cscript src='/Script/jquery-1.4.1.min.js' type='text/javascript' %3E%3C/script%3E")); 
  8.   
  9. }//]]>  
  10.    
  11. </script>  
  12.    

問題:如何使用jQuery實現點擊按鈕彈出一個對話框?

 

回答:代碼如下:

 

Html代碼 
  1. <input id="inputField" type="text" size="12"/>  
  2.    
  3. jQuery:  
  4. <script type="text/javascript"> $(document).ready(function () { $('#Button1').click(function () { alert($('#inputField').attr("value")); }); }); </script>  

 

問題:jQuery中的Delegate()函數有什麼作用?

 

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

 

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

Html代碼 
  1. $("ul").delegate("li", "click", function(){  
  2.    
  3. $(this).hide();  
  4.    
  5. });  

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

 

問題:怎樣用jQuery編碼和解碼URL?

 

回答:在jQuery中,我們可以使用以下方法實現URL的編碼和解碼。

encodeURIComponent(url) and decodeURIComponent(url)

 

問題:如何用jQuery禁用瀏覽器的前進後退按鈕?

 

回答:實現代碼如下:

Html代碼 
  1. <script type="text/javascript" language="javascript">  
  2.    
  3. $(document).ready(function() {  
  4.    
  5.      window.history.forward(1);  
  6.    
  7.      //OR  
  8.    
  9.      window.history.forward(-1);  
  10.    
  11. });  
  12.    
  13. </script>  
  14.    
發佈了1 篇原創文章 · 獲贊 1 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章