自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

jQuery中容易讓人困惑的東西

開發(fā) 前端
jqueryt很靈活,太靈活了,可以說是他一個(gè)優(yōu)點(diǎn),也是他一個(gè)缺點(diǎn),達(dá)到一種效果,十個(gè)人也許會(huì)用十種不同的方法來實(shí)現(xiàn)這個(gè)過程,結(jié)果一樣,過程不一樣,這到底是好,還是壞呢。

一,什么是jquery

jQuery是繼prototype之后又一個(gè)優(yōu)秀的Javascrīpt框架。其宗旨是——WRITE LESS,DO MORE,寫更少的代碼,做更多的事情。說白了,jquery就是javascript。只不過按照人的習(xí)慣思維把它封裝了一個(gè)比較強(qiáng)大的框架。還有一點(diǎn)jquery能夠把html和javascript盡量分離,這也是我愿意用jquery的一個(gè)重要原因。jqueryt很靈活,太靈活了,可以說是他一個(gè)優(yōu)點(diǎn),也是他一個(gè)缺點(diǎn),達(dá)到一種效果,十個(gè)人也許會(huì)用十種不同的方法來實(shí)現(xiàn)這個(gè)過程,結(jié)果一樣,過程不一樣,這到底是好,還是壞呢。就各說各的理了。

二,學(xué)習(xí)和使用jquery的困惑

1)$.fn.extend({})和$.extend({})

$.fn.extend是擴(kuò)展jQuery元素集來提供新的方法(通常用來制作插件)。解釋一下,就是通過$.fn.extend產(chǎn)生的jquery方法在調(diào)用jquery時(shí),不會(huì)包括括在jquery自身的對(duì)象中,它是擴(kuò)展插件的形勢(shì),繼承的。你可以把它理解為php中的extend。舉個(gè)例子

  1. $.fn.extend({     
  2.   checkname: function() {     
  3.      
  4.    if($.trim($(this).val()) != ""){     
  5.      
  6.        return true;        
  7.      
  8.     }else{     
  9.      
  10.       return false;     
  11.      
  12.     }     
  13.   }     
  14. });     
 

 調(diào)用時(shí) $("input.name").checkname();

$.extend是擴(kuò)展jQuery對(duì)象本身。解釋一下,就是說通過$.extend產(chǎn)生的jquery方法,在調(diào)用jquery時(shí),會(huì)包括在jquery自身的對(duì)象中。說白了,就是在jquery對(duì)象中添加方法,例如

  1. $.extend({     
  2.   checkname: function(name) {     
  3.      
  4.    if($.trim(name!= ""){     
  5.      
  6.        return true;        
  7.      
  8.     }else{     
  9.      
  10.       return false;     
  11.      
  12.     }     
  13.   }     
  14. });     
 

 調(diào)用時(shí) $.checkname($("input.name").val());

2)$().each({})和$.each({})

$().each({})用來循環(huán)數(shù)組和對(duì)像

  1. <ul>     
  2.   <li><div>Glen</div></li>     
  3.   <li>Tane</li>     
  4.   <li>Ralph</li>     
  5. </ul>     
 

下面是循環(huán)對(duì)象

  1. $("ul li").each(function(k,v){     
  2.  alert("key="+k+",value="+$(v).html());     
  3. });     
  4. );     
 

下面是循環(huán)數(shù)組

  1. array = [0,1,2];     
  2. $(array).each(function(k,v){     
  3.  alert("key="+k+",value="+v);     
  4. });     
 

$.each({})可用來循環(huán)所有數(shù)組和對(duì)象,個(gè)人覺得他們二個(gè)沒什么差別,除了寫法不一樣外

下面是循環(huán)數(shù)組

  1. array = [0,1,2];     
  2.  $.each(array,function(k,v){     
  3.   alert("key="+k+",value="+v);     
  4.  });   

下面是循環(huán)對(duì)象

  1. $.each($("ul li"),function(k,v){     
  2.  alert("key="+k+",value="+$(v).html());     
  3. });     
 

注意:function(k)這里k是下標(biāo),function(k,v)這是k還是下標(biāo),v不一定,有可能是數(shù)組里面的一個(gè)值,也有可能是一個(gè)對(duì)象,如果是對(duì)象時(shí),如果參數(shù)不寫出來,默認(rèn)情況是this

3),$(" :contains()")和$("  :has()")

$(" :contains()") 匹配包含給定文本的元素,contains里面包括的是文本內(nèi)空

$("li:contains('Ra')").css('color','red');

$("  :has()")匹配含有選擇器所匹配的元素的元素,has里面包話的是一個(gè)標(biāo)簽

$("li:has(div)").css('color','red');

4), $(" :first")和 $(" :first-child")

 $(" :first") 匹配找到的***個(gè)元素

$(" :first-child") 匹配***個(gè)子元素,':first' 只匹配一個(gè)元素,而此選擇符將為每個(gè)父元素匹配一個(gè)子元素
 
 
  1. <div><ul>     
  2.     <li>list item 1</li>     
  3.     <li>list item 2          
  4.       <ul>     
  5.         <li>list item 2-a</li>     
  6.         <li>list item 2-b</li>     
  7.       </ul>     
  8.     </li>     
  9.     <li>list item 3</li>     
  10.     <li>list item 4</li>     
  11. </ul></div>     
  1. $("ul li:first").css('color','red');        //只匹配***次,  
  2. $("ul li:first-child").css('color','red');    //匹配每個(gè)符合要求的對(duì)象  
  3. 5),$().html()和$().text()  
  4. $().html()取得***個(gè)匹配元素的html內(nèi)容。這個(gè)函數(shù)不能用于XML文檔。但可以用于XHTML文檔。  
  5. $().text()結(jié)果是由所有匹配元素包含的文本內(nèi)容組合起來的文本。這個(gè)方法對(duì)HTML和XML文檔都有效。  
  6. <span><p>Hello</p></span> 
  7. $('span').html();    //得到的結(jié)果是<p>Hello</p> 
  8. $('span').texxt();    //得到的結(jié)果是Hello  
  9. 6),$().empty()和$().remove()  
  10. $().empty() 清空匹配元素中的內(nèi)空,但不清空自身、  
  11. $().remove(),清空匹配元素中的內(nèi)空,以及自身  
  12. <span><p>Hello</p></span> 
  13. $('p').empty() //得到的結(jié)果是<span><p></p></span> 
  14. $('p').remove() //得到的結(jié)果是<span></span> 

 【編輯推薦】

  1. jQuery浮動(dòng)留言板插件
  2. 12個(gè)必要的jQuery表單插件
  3. 27個(gè)jQuery網(wǎng)頁(yè)拖放操作的插件
  4. 1.1.4 jQuery的代碼特色
  5. 1.1.3 jQuery的基本概念

 

責(zé)任編輯:張偉 來源: 水之原的博客
相關(guān)推薦

2022-06-13 09:05:33

Ramda函數(shù)簽名

2009-08-14 09:19:15

Windows 7XP模式優(yōu)缺點(diǎn)

2019-04-28 13:28:25

Siri自然語(yǔ)言交互工具

2012-11-21 09:53:19

jQueryWeb

2021-11-23 11:05:53

監(jiān)視隱私數(shù)據(jù)泄露

2021-08-26 15:44:33

路由函數(shù)ASP

2012-06-21 14:57:13

jQuery

2023-12-13 13:00:57

2024-12-04 10:35:21

2020-01-14 18:20:48

OA選型CIO

2019-06-26 15:41:26

AI云原生云遷移

2024-08-26 14:46:57

2011-09-15 09:19:30

2013-11-29 09:30:52

2020-01-07 16:18:09

CSS前端代碼

2015-09-21 14:44:54

物聯(lián)網(wǎng)

2021-10-09 13:48:11

操作符Python運(yùn)算符

2009-03-09 18:44:05

2021-01-07 08:05:20

JenkinsDevOps

2025-03-10 00:17:00

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)