国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
頁面所有元素加載完成之后執(zhí)行某個js函數(shù)

在頁面所有元素加載完成之后執(zhí)行某個js函數(shù)

 

做項目的時候可能會遇到這種情況:

       一個JSP頁面中import了一個目錄文件(menu.jsp),而且每個頁面的<body>中都定義了onload事件,那么在此定義window.onload函數(shù)的時候可能會不生效或者多個onload之間覆蓋的現(xiàn)象.

       有的朋友肯定會說用jQuery的$().ready(function(){}),或者(function(){})這種方式, 其實這個函數(shù)和javascript的onload事件是由區(qū)別的,那么來看看他們的區(qū)別:

他們的主要的區(qū)別有兩點:

  1. 執(zhí)行時機
    window.onload方法是在網(wǎng)頁中的所有的元素(包括元素的所有關(guān)聯(lián)文件)都完全加載到瀏覽器之后才執(zhí)行。而通過jQuery中的$(document).ready()方法注冊的事件處理程序,只要在DOM完全就緒時,就可以調(diào)用了,比如一張圖片只要<img>標簽完成,不用等這個圖片加載完成,就可以設(shè)置圖片的寬高的屬性或樣式等。
  2. $(document).ready()方法可以多次使用而注冊不同的事件處理程序,而window.onload一次只能保存對一個函數(shù)的引用,多次綁定函數(shù)只會覆蓋前面的函數(shù)。
    先來看window.onload方法在一個頁面上注冊兩次會是什么樣的結(jié)果:
    Js代碼  
    1. function one(){  
    2.     alert("one");  
    3. }  
    4. function two(){  
    5.     alert("two");  
    6. }  
    7. window.onload = two ;  
    8. window.onload = one ;  

     

    上面的代碼運行后,會彈出“one”。

    再來看看$(document).ready()方法分兩次調(diào)用會是什么結(jié)果。

    Js代碼  
    1. function one(){  
    2.     alert("one");  
    3. }  
    4. function two(){  
    5.     alert("two");  
    6. }  
    7. $(document).ready(function(){  
    8.     one();  
    9. });  
    10. $(document).ready(function(){  
    11.     two();  
    12. });  
     上面的代碼運行后,會分別彈出“one”和“two”。
    好了,比較完了,也就是說window.onload和jQuery的方式都無法實現(xiàn),所以有了下面的實現(xiàn):
    Js代碼  
    1. var $$ = function(func){  
    2.             if (document.addEventListener) {  
    3.                 window.addEventListener("load", func, false);  
    4.             }  
    5.             else if (document.attachEvent) {  
    6.                 window.attachEvent("onload", func);  
    7.             }  
    8.         }  
    9.           
    10.         $$(function(){  
    11.             show();  
    12.         })  
     使用的時候只要這樣:
    $$(function(){...此處加上需要執(zhí)行的內(nèi)容...});即可...

     

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
非阻塞式JavaScript腳本介紹
在頁面加載完后執(zhí)行javascript代碼 --網(wǎng)上download
window.onload
[前端]圖片預(yù)加載方法
前端開發(fā)之JQuery入門基礎(chǔ)操作
頁面加載后觸發(fā)函數(shù)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服