• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答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
    當前位置: 首頁 - 科技 - 知識百科 - 正文

    重寫document.write實現無阻塞加載js廣告(補充)_javascript技巧

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

    重寫document.write實現無阻塞加載js廣告(補充)_javascript技巧

    重寫document.write實現無阻塞加載js廣告(補充)_javascript技巧:無阻塞加載javascript,對于頁面性能優化有很大的作用,這樣能有效的減少js對頁面加載的阻塞。特別是一些廣告js文件,由于廣告內容有可能是富媒體,更是很可能成為你頁面加載提速的瓶頸,高性能javascript告訴我們,同學,提升你的網頁速度,就無阻塞地加載J
    推薦度:
    導讀重寫document.write實現無阻塞加載js廣告(補充)_javascript技巧:無阻塞加載javascript,對于頁面性能優化有很大的作用,這樣能有效的減少js對頁面加載的阻塞。特別是一些廣告js文件,由于廣告內容有可能是富媒體,更是很可能成為你頁面加載提速的瓶頸,高性能javascript告訴我們,同學,提升你的網頁速度,就無阻塞地加載J
    無阻塞加載javascript,對于頁面性能優化有很大的作用,這樣能有效的減少js對頁面加載的阻塞。特別是一些廣告js文件,由于廣告內容有可能是富媒體,更是很可能成為你頁面加載提速的瓶頸,高性能javascript告訴我們,同學,提升你的網頁速度,就無阻塞地加載JS吧。

    于是便有一下代碼出現。

    上邊都是大家熟悉的,看過書的同學都知道這樣無阻塞加載的好處,效果挺不錯的,當此等無阻塞腳本遇到一般js廣告就來了寫問題——廣告代碼出現在HTML里面了卻不顯示廣告。

    納尼?HTML出來了不渲染到頁面上?

    先看看廣告js代碼

    代碼如下:
    document.write('Logo');

    代碼挺簡單就一個document.write輸出HTML代碼(相信很多廣告商的廣告都這樣),頁面不顯示廣告問題在哪里呢? 問題就在這個document.write。為什么?先w3schools看看document.write的定義很使用吧。

    定義和用法
    write() 方法可向文檔寫入 HTML 表達式或 JavaScript 代碼。
    可列出多個參數(exp1,exp2,exp3,...) ,它們將按順序被追加到文檔中。

    方法:
    一是在使用該方在文檔中輸出 HTML,另一種是在調用該方法的的窗口之外的窗口、框架中產生新文檔。在第二種情況中,請務必使用 close() 方法來關閉文檔。

    但其原理是在頁面流輸入過程中執行,一旦頁面加載完畢,再次調用 document.write(),會隱式地調用 document.open() 來擦除當前文檔并開始一個新的文檔。也就是說如果在HTML加載完后我們再使用document.write會檫除之前生成html,而顯示document.write輸出的內容。

    而我們例子中在頁面加載完后在在html中輸出document.write,就不會被執行了。問題知道了,原理知道了,那怎么解決這個問題呢?

    異步利用ajax,行不同,很多廣告文件都是第三方的,在不同域名下,存在跨域問題,而且不能我們控制其代碼的輸出。在這種情況下我們想到了一個辦法就是重寫掉document.write,在js文件加載結束后再把document.write重寫回去。看代碼。

    第一版本無阻塞加載js廣告:

    頁面調用代碼:

    廣告js代碼

    第一版本的問題是在多個文件調用的時候,會出現一些問題:

    1. 由于文件加載的速度不一樣,導致可能有些先加載有些后加載,也就是無序的,而且很多時候我們需要的是有序的。比如我們需要先加載第一屏的廣告。

    2. 想有些廣告需要前置設置一些參數的,例如google adsense

    為了解決這兩個問題好進一步修改成最終無阻塞加載js版本。

    HTML頁面代碼:

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

    文檔

    重寫document.write實現無阻塞加載js廣告(補充)_javascript技巧

    重寫document.write實現無阻塞加載js廣告(補充)_javascript技巧:無阻塞加載javascript,對于頁面性能優化有很大的作用,這樣能有效的減少js對頁面加載的阻塞。特別是一些廣告js文件,由于廣告內容有可能是富媒體,更是很可能成為你頁面加載提速的瓶頸,高性能javascript告訴我們,同學,提升你的網頁速度,就無阻塞地加載J
    推薦度:
    標簽: 加載 js 廣告
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 国产午夜精品视频| 久久精品无码专区免费| 国产在线国偷精品免费看| 久久亚洲精精品中文字幕| 精品无码人妻一区二区三区不卡 | 人妻少妇精品视中文字幕国语| 精品久久综合1区2区3区激情| 精品国产免费一区二区三区香蕉 | 国产成人精品日本亚洲专区| 99re久久精品国产首页2020| 国内精品久久久久久久97牛牛 | 9999国产精品欧美久久久久久| 国产成人精品高清在线观看93| 一本一本久久a久久精品综合麻豆| 国内精品国语自产拍在线观看| 99精品福利国产在线| 久久96国产精品久久久| 国产精品免费看久久久| 亚洲国产精品VA在线看黑人 | 精品国产黑色丝袜高跟鞋| 999国产精品色在线播放| 四虎精品影院4hutv四虎| 青青草国产精品欧美成人| 久久精品国产一区| 久久777国产线看观看精品| 国产成人精品免费视频网页大全| WWW国产精品内射老师| 成人区人妻精品一区二区不卡网站 | 青青青青久久精品国产h| A级精品国产片在线观看| 国产精品久久久久AV福利动漫| 乱精品一区字幕二区| 久久亚洲欧美国产精品| 亚洲AV乱码久久精品蜜桃| 久久国产乱子伦免费精品| 精品国产三级a在线观看| 精品国产一区二区三区久久久狼| 国产精品186在线观看在线播放 | 精品无码久久久久久久动漫| 久久久久国产日韩精品网站| 精品人妻V?出轨中文字幕|