<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        解析頁面加載與js函數的執行onloadorready_jquery

        來源:懂視網 責編:小采 時間:2020-11-27 21:17:11
        文檔

        解析頁面加載與js函數的執行onloadorready_jquery

        解析頁面加載與js函數的執行onloadorready_jquery:首先,頁面加載順序:解析HTML結構。加載外部腳本和樣式表文件。解析并執行腳本代碼。構造HTML DOM模型。加載圖片等外部文件。頁面加載完畢。 也就是:html → head → title → #text(網頁標題) → style → 加載樣式 → 解析樣式 → link → 加
        推薦度:
        導讀解析頁面加載與js函數的執行onloadorready_jquery:首先,頁面加載順序:解析HTML結構。加載外部腳本和樣式表文件。解析并執行腳本代碼。構造HTML DOM模型。加載圖片等外部文件。頁面加載完畢。 也就是:html → head → title → #text(網頁標題) → style → 加載樣式 → 解析樣式 → link → 加

        首先,頁面加載順序:
        解析HTML結構。
        加載外部腳本和樣式表文件。
        解析并執行腳本代碼。
        構造HTML DOM模型。
        加載圖片等外部文件。
        頁面加載完畢。

        也就是:
        html → head → title → #text(網頁標題) → style → 加載樣式 → 解析樣式 → link → 加載外部樣式表文件 → 解析外部樣式表 → script → 加載外部腳本文件 → 解析外部腳本文件 → 執行外部腳本 → body → div → script → 加載腳本 → 解析腳本 → 執行腳本 → img → script → 加載腳本 → 解析腳本 → 執行腳本 → 加載外部圖像文件 → 頁面初始化完畢。

        JS 的初始化裝載。

        onload
        不是在 document 加載完成的時候調用的, 而是在頁面所有元素 (包括圖片等) 全部加載完成才會調用. 如果頁面上有尺寸很大的圖片, 下載需要很長時間, 那么腳本就一直不能被初始化, 直到圖片裝載完成, 嚴重時用戶體驗會受到很大影響.但是,window.onload 也并非是一無用處,很多情況下一些B/S軟件需要頁面全部加載后才提供用戶相關功能,這樣 window.onload 就可以提供一種“加載中”的功能,又或者是頁面內容很少,完全無需 document.ready(); 根據各種情況,應該合理的使用 onload 和 ready。

        使用onload加載:
        代碼如下:
        window.onload=function(){
        var currentRenderer = 'javascript';
        FusionCharts.setCurrentRenderer(currentRenderer);
        var chartObj = new FusionCharts({
        swfUrl: "Pie3D.swf",
        width: "290", height: "210",
        id: 'sampleChart',
        dataSource: "/ucenter/seo/new_seo_tool.php?check=xml&val={{pre_num}}",
        dataFormat: FusionChartsDataFormats.XMLURL,
        renderAt: 'chart1div'
        }).render();
        }

        ready
        在 W3C 中有個叫 DOMContentLoaded 的事件,它會在 DOM (文檔對象模型) 被加載完成的時候觸發.

        方法一:
        代碼如下:
        類似于Jquery的$(function(){...}) $(document).ready(function(){...})
        (function () {
        var ie = !!(window.attachEvent && !window.opera);
        var wk = /webkit\/(\d+)/i.test(navigator.userAgent) && (RegExp.$1 < 525);
        var fn = [];
        var run = function () { for (var i = 0; i < fn.length; i++) fn[i](); };
        var d = document;
        d.ready = function (f) {
        if (!ie && !wk && d.addEventListener)
        return d.addEventListener('DOMContentLoaded', f, false);
        if (fn.push(f) > 1) return;
        if (ie)
        (function () {
        try { d.documentElement.doScroll('left'); run(); }
        catch (err) { setTimeout(arguments.callee, 0); }
        })();
        else if (wk)
        var t = setInterval(function () {
        if (/^(loaded|complete)$/.test(d.readyState))
        clearInterval(t), run();
        }, 0);
        };
        })();

        調用時:
        document.ready(function(){
        alert('ok');
        }

        方法二:
        代碼如下:
        /如果支持 W3C DOM2, 則使用 W3C 方法
        if (document.addEventListener){
        document.addEventListener("DOMContentLoaded", te, false);
        }
        else if (/MSIE/i.test(navigator.userAgent)){/如果是 IE 瀏覽器(不支持)
        /創建一個 script 標簽, 該標簽有 defer 屬性, 當 document 加載完畢時才會被載入
        document.write("
        var script = document.getElementByIdx_x("__ie_onload");
        /如果文檔確實裝載完畢, 調用初始化方法
        script.onreadystatechange = function() {
        if (this.readyState == 'complete') {
        te();
        }
        }
        }
        else if (/WebKit/i.test(navigator.userAgent)) {/如果是 Safari 瀏覽器(不支持)
        /創建定時器, 每 0.01 秒檢驗一次, 如果文檔裝載完畢則調用初始化方法
        var _timer = setInterval( function() {
        if (/loaded|complete/.test(document.readyState)) {
        clearInterval(_timer);
        te();
        }
        }, 10);
        }
        else {/如果以上皆不是, 使用最壞的方法 (本例中, Opera 7 將會跑到這里來)
        window.onload = function(e) {
        te();
        }
        }
        function te(){
        alert('ok');
        }

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        解析頁面加載與js函數的執行onloadorready_jquery

        解析頁面加載與js函數的執行onloadorready_jquery:首先,頁面加載順序:解析HTML結構。加載外部腳本和樣式表文件。解析并執行腳本代碼。構造HTML DOM模型。加載圖片等外部文件。頁面加載完畢。 也就是:html → head → title → #text(網頁標題) → style → 加載樣式 → 解析樣式 → link → 加
        推薦度:
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲欧美国产国产一区二区三区| 亚洲国产精品自在拍在线播放| 亚洲日本VA午夜在线影院| 久久一区二区三区免费播放| 国产成人精品久久亚洲| 亚洲电影免费在线观看| 四虎影视无码永久免费| 亚洲人成网站在线播放vr| 在线观看人成视频免费无遮挡| 国产亚洲成归v人片在线观看 | 免费一级毛片在线播放视频| 亚洲日韩精品一区二区三区无码| 在线观看黄片免费入口不卡| 亚洲国产精品一区| 国产一卡二卡四卡免费| 亚洲免费黄色网址| 成人片黄网站A毛片免费| 国产精品亚洲精品久久精品| 国产成人免费福利网站| 搜日本一区二区三区免费高清视频| 亚洲爽爽一区二区三区| 国色精品va在线观看免费视频| 亚洲国产一区二区三区青草影视| 亚洲网站在线免费观看| 亚洲最大的成人网| 中文字幕亚洲一区二区三区| 特级无码毛片免费视频尤物| 亚洲jizzjizz在线播放久| 免费国产叼嘿视频大全网站| 亚洲国产超清无码专区| 国产精品无码一二区免费| 在线观看免费视频一区| 精品亚洲AV无码一区二区| 亚洲AV网站在线观看| 免费观看成人久久网免费观看| 亚洲一线产区二线产区精华| 亚洲乱码日产精品a级毛片久久| 久久亚洲精品成人无码| 久久午夜伦鲁片免费无码| 奇米影视亚洲春色| 亚洲成人免费网站|