多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內(nèi)最全I(xiàn)T社區(qū)平臺(tái) 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁 > web前端 > htmlcss > onload和ready的不同

onload和ready的不同

來源:程序員人生   發(fā)布時(shí)間:2015-06-06 07:58:23 閱讀次數(shù):2899次

          在學(xué)習(xí)JavaScript時(shí),常常使用的是window.onload方法,在jQuery中,又學(xué)習(xí)使用了$(document).ready()方法。其實(shí)jQuery就是1種輕量級(jí)的JavaScript。這兩個(gè)事件都是在頁面文檔加載時(shí)觸發(fā)的,但是二者還是有區(qū)分的,其實(shí)我的內(nèi)心里也1直困惑著,但是困惑總是要有明朗的1天的。

下面就說說它們之間的不同吧!

 

1.履行時(shí)間

window.onload( )必須等到頁面內(nèi)包括圖片的所有元素加載終了后才能履行。 

           $(document).ready( )是DOM結(jié)構(gòu)繪制終了后就履行,沒必要等到加載終了。也就是說$(document).ready( )要比window.onload( )先履行。

2.編寫個(gè)數(shù)不同

window.onload( )不能同時(shí)編寫多個(gè),如果有多個(gè)window.onload( )方法,只會(huì)履行1個(gè) 

$(document).ready( )可以同時(shí)編寫多個(gè),并且都可以得到履行

3.簡化寫法

window.onload( )沒有簡化寫法 

$(document).ready(function( ){  })可以簡寫成$(function( ){  });

 

           在常規(guī)的JavaScript代碼中,通常使用window.onload( )方法,而在jQuery中,使用的是$(document).ready( )方法。

$(document).ready( )方法和window.onload( )方法有相似的功能,但是在履行時(shí)機(jī)方面是有區(qū)分的。window.onload( )方法是在網(wǎng)頁中所有的元素(包括元素的關(guān)聯(lián)文件)完全加載到閱讀器后才履行,即JavaScript此時(shí)才可以訪問網(wǎng)頁中的任何元素。而通過jQuery中的$(document).ready()方法注冊(cè)的事件處理程序,可以在DOM完全就緒時(shí)就能夠被調(diào)用。此時(shí),網(wǎng)頁的所有元素對(duì)jQuery而言都是可以訪問的,但是,這其實(shí)不意味著這些元素關(guān)聯(lián)的文件都已下載終了。

     

        例:load( )方法會(huì)在元素的onload事件中綁定1個(gè)處理函數(shù)。如果處理函數(shù)綁定給window對(duì)象,則會(huì)在所有內(nèi)容(包括窗口、框架、對(duì)象和圖象等)加載終了后觸發(fā),如果處理函數(shù)綁定在元素上,則會(huì)在元素的內(nèi)容加載終了后觸發(fā)。


           最多見的例子是1些圖片的網(wǎng)站,有時(shí)候你會(huì)看到有的網(wǎng)站是所有的圖片都有1個(gè)占位符,在頁面加載好之前圖片就已占有1定的空間了,然后每張各自的加載,這類情勢(shì)是使用了$(document).ready( )方法。有的網(wǎng)頁是要等全部圖片都加載好以后 才顯示網(wǎng)頁,當(dāng)網(wǎng)速不好的時(shí)候1個(gè)頁面需要等很久才能顯示出來,這就是使用了window.onload( )方法。很明顯,把網(wǎng)頁解析為DOM樹的速度比把網(wǎng)頁中的所有關(guān)聯(lián)文件加載終了的速度快很多。

           另外需要注意1點(diǎn),由于在$(document).ready()方法內(nèi)注冊(cè)的事件,只要DOM就緒就會(huì)被履行,因此可能此時(shí)元素的關(guān)聯(lián)文件未下載完。例如與圖片有關(guān)的HTML下載終了,并且已解析為DOM樹了,但很有可能圖片還未加載終了,所以例如圖片的高度和寬度這樣的屬性此時(shí)不1定有效。要解決這個(gè)問題,可使用JQuery中另外一個(gè)關(guān)于頁面加載的方法――load()方法。load()方法會(huì)在元素的onload事件中綁定1個(gè)處理函數(shù)。如果處理函數(shù)綁定給window對(duì)象,則會(huì)在所有內(nèi)容(包括窗口、框架、對(duì)象和圖象等)加載終了后觸發(fā),如果處理函數(shù)綁定在元素上,則會(huì)在元素的內(nèi)容加載終了后觸發(fā)。


總結(jié):

           原以為大致相同的兩種方法,原來有這么多的差異,就加載的速度上就是很明顯。所以,學(xué)習(xí)中不要太自以為是,還是1切都要弄清楚才行。

生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 亚洲二区在线视频 | 日本一区二区三区不卡视频中文字幕 | 免费性 | 亚洲国产成a人v在线 | 午夜羞羞视频在线观看 | 中文字幕网址 | a一级毛片 | 久久人人爱 | 精品一区二区三区自拍图片区 | 高清视频在线播放 | 亚洲精品a | 狂野欧美性猛交xxxx巴西 | 国产一区二区三区夜色 | 另类小说校园春色 | 亚洲 欧美 小说 | 久青草青综合在线视频 | 亚洲 自拍 另类 制服在线 | 亚洲一级在线 | 亚洲视频第二页 | 欧美伦理三级在线播放影院 | 亚洲美女视频 | 亚洲天堂小视频 | 国产亚洲欧美一区二区三区 | 国产欧美亚洲专区第一页 | 波多野结衣gvg | 欧美理论片在线观看一区二区 | 久久精品久久精品久久精品 | 男人久久天堂 | hh99me福利毛片在线看 | 欧美性videos高清精品 | 久久亚洲伊人成综合人影院 | 国产一级做a爱片久久片 | 香港三级吃孕妇奶水 | 精品久久久久久中文字幕专区 | 日韩天堂 | 精品国产欧美一区二区三区成人 | 91情国产l精品国产亚洲区 | 欧美一级做性受 | 国产精品视频分类 | 精品在线免费观看视频 | 欧美一级高清视频在线播放 |