精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

探究網頁資源究竟是如何阻塞瀏覽器加載的

系統 瀏覽器
一個頁面允許加載的外部資源有很多,常見的有腳本、樣式、字體、圖片和視頻等,對于這些外部資源究竟是如何影響整個頁面的加載和渲染的呢?今天我們來一探究竟。

[[374280]]

一個頁面允許加載的外部資源有很多,常見的有腳本、樣式、字體、圖片和視頻等,對于這些外部資源究竟是如何影響整個頁面的加載和渲染的呢?今天我們來一探究竟。

閱讀完這篇文章你將解開如下謎團:

  • 如何用 Chrome 定制網絡加載速度?
  • 圖片/視頻/字體會阻塞頁面加載嘛?
  • CSS 是如何阻塞頁面加載的?
  • JS 又是如何阻塞頁面加載的?
  • JS 一定會阻塞 DOM 加載嘛?
  • defer 和 async 是什么?又有何特點?
  • 動態腳本會造成阻塞嘛?
  • 阻塞是怎么和 DOMContentLoaded 與 onload 扯上關系的?

測試前環境準備

測試之前我們需要對瀏覽器下載資源的速度進行控制,將它重新設置為 50kb/s,操作方式:

  1. 打開 Chrome 開發者工具;
  2. 在 Network 面板下找到 Disable cache 右側的下拉列表,然后選擇 Add 添加自定義節流配置;
  3. 添加一個下載速度為 50kb/s 的配置;
  4. 最后在第二步驟中的下拉列表選擇剛剛配置的選項即可;
  5. 注意:如果當前選擇的自定義選項被修改了,則需要切換到別的選項再切回來才可生效。

為什么是這個速度?因為如下的一些資源,比如圖片、樣式或者腳本體積都是 50kb 的好幾倍,方便測試。

圖片會造成阻塞嘛

直接寫個示例來看下結果:

  1. <!DOCTYPE html> 
  2. <html lang="en"
  3. <head> 
  4.     <meta charset="UTF-8"/> 
  5.     <script> 
  6.         document.addEventListener('DOMContentLoaded', () => { 
  7.             console.log('DOMContentLoaded'
  8.         }) 
  9.         window.onload = function() { 
  10.             console.log('onload'
  11.         } 
  12.     </script> 
  13. </head> 
  14. <body> 
  15.     <h1>我是 h1 標簽</h1> 
  16.     <img src="https://xxx.oss-cn-shenzhen.aliyuncs.com/images/flow.png" /> 
  17.     <h2>我是 h2 標簽</h2> 
  18. </body> 
  19. </html> 

上面這張圖片的大小大概是 200kb,當把網絡下載速度限制成 50kb/s,打開該頁面,可以看到如下結果:當 h1 和 h2 標簽渲染出來且打印了 DOMContentLoaded 的時候,此時圖片還在加載中,這就說明了圖片并不會阻塞 DOM 的加載,更加不會阻塞頁面渲染;當圖片加載完成的時候,會打印 onload,說明圖片延遲了 onload 事件的觸發。

視頻、字體和圖片其實是一樣的,也不會阻塞 DOM 的加載和渲染。

CSS 加載阻塞

同樣的,我們還是直接用代碼來測試 CSS 加載對頁面阻塞的情況,因為下面代碼加載的 bootstrap.css 是 192kb 的,所以理論上下載它應該需要花費 3 到 4 秒左右。

  1. <!DOCTYPE html> 
  2. <html lang="en"
  3. <head> 
  4.     <meta charset="UTF-8"/> 
  5.     <link href="https://cdn.bootcss.com/bootstrap/4.0.0-alpha.6/css/bootstrap.css" rel="stylesheet" /> 
  6. </head> 
  7. <body> 
  8.     <h1>我是 h1 標簽</h1> 
  9. </body> 
  10. </html> 

測試過程如下:

  1. 在 Elements 面板下,選中 h1 這個標簽,然后按 delete 鍵將它從 DOM 中刪掉,從而模擬首次加載;
  2. 刷新瀏覽器,馬上 Elements 面板下就加載出 h1 標簽,繼續加載 3 到 4 秒后(此時正在加載 bootstrap.css),頁面出現 我是 h1 標簽 字樣,此時頁面已經渲染完成。

從而得出結論:

  • bootstrap.css 還沒加載完成,而 DOM 中就已經出現 h1 標簽,說明 CSS 不會阻塞 DOM 的解析;
  • 頁面直到 bootstrap.css 加載完成才出現 h1 里的文案,說明 CSS 會阻塞 DOM 的渲染。

為什么是這個結論呢?試想一下頁面渲染的流程就知道了。瀏覽器首先解析 HTML 生成 DOM樹,解析 CSS 生成 CSSOM 樹,然后 DOM 樹和 CSSOM 樹進行合成生成渲染樹,通過渲染樹進行布局并且計算每個節點信息,繪制頁面。


可以說解析 DOM 和 解析 CSS 其實是并列進行的,既然是并列進行的,那 CSS 和 DOM 就不會互相影響了,這和結論一相符;另外渲染頁面一定是在得到 CSSOM 樹之后進行的,這和結論二相符。

CSS 一定會阻塞 DOM 的渲染嘛?答案是否定的,當把外鏈樣式放到 最尾部去加載:

  1. <body> 
  2.     <h1>我是 h1 標簽</h1> 
  3.     <link href="https://cdn.bootcss.com/bootstrap/4.0.0-alpha.6/css/bootstrap.css" rel="stylesheet" /> 
  4. </body> 

此時刷新瀏覽器,頁面上會馬上顯示出 我是 h1 標簽 字樣,當 3 到 4 秒過后樣式加載完成的時會造成二次渲染,頁面重新渲染出該字樣,這就說明 CSS 阻塞 DOM 的渲染只阻塞定義在 CSS 后面的 DOM。二次渲染會對用戶造成不好的體驗且加重了瀏覽器的負擔,所以這也就是為什么需要把外鏈樣式提前到 里加載的原因。

CSS 會阻塞后面 JS 的執行嘛

CSS 阻塞了后面 DOM 的渲染,那它會阻塞 JS 的執行嘛?

  1. <!DOCTYPE html> 
  2. <html lang="en"
  3. <head> 
  4.     <meta charset="UTF-8"/> 
  5.     <link href="https://cdn.bootcss.com/bootstrap/4.0.0-alpha.6/css/bootstrap.css" rel="stylesheet" /> 
  6. </head> 
  7. <body> 
  8.     <h1>我是 h1 標簽</h1> 
  9.     <script> 
  10.         console.log('888'
  11.     </script> 
  12. </body> 
  13. </html> 

刷新瀏覽器的時候可以看到,瀏覽器 Console 面板下沒有打印內容,而當樣式加載完成的時候打印了 888,這就說明 CSS 會阻塞定義在其之后 JS 的執行。

為什么會這樣呢?試想一下,如果 JS 里執行的操作需要獲取當前 h1 標簽的樣式,而由于樣式沒加載完成,所以就無法得到想要的結果,從而證明了 CSS 需要阻塞定義在其之后 JS的執行。

JS 加載阻塞

CSS 會阻塞 DOM 的渲染和阻塞定義在其之后的 JS 的執行,那 JS 加載會對渲染過程造成什么影響呢?

  1. <!DOCTYPE html> 
  2. <html lang="en"
  3. <head> 
  4.     <meta charset="UTF-8"/> 
  5.     <script src="https://cdn.bootcss.com/jquery/2.1.4/jquery.min.js"></script> 
  6. </head> 
  7. <body> 
  8.     <h1>我是 h1 標簽</h1> 
  9. </body> 
  10. </html> 

首先刪除頁面中已經存在的 h1 標簽(如果存在的話),仔細觀察 Elements 面板,當刷新瀏覽器的時候,一直未加載出 h1 標簽(期間頁面一直白屏),直到 JS 加載完成后,DOM中才出現,這足以說明了 JS 會阻塞定義在其之后的 DOM 的加載,所以應該將外部 JS 放到 的最尾部去加載,減少頁面加載白屏時間。

defer 和 async

JS 一定會阻塞定義在其之后的 DOM 的加載嘛?來測試一下:

  1. <!DOCTYPE html> 
  2. <html lang="en"
  3. <head> 
  4.     <meta charset="UTF-8"/> 
  5.     <script async src="https://cdn.bootcss.com/jquery/2.1.4/jquery.min.js"></script> 
  6. </head> 
  7. <body> 
  8.     <h1>我是 h1 標簽</h1> 
  9. </body> 
  10. </html> 

上面這段代碼的測試結果是當頁面中顯示出 h1 標簽的時候,腳本還沒有加載完成,這就說明了 async 腳本不會阻塞 DOM 的加載;同理我們可以用同樣的方式測試 defer,也會得到這個結論。

現在我們知道了通過 defer 或者 async 方式加載 JS 的時候,它是不會阻塞 DOM 加載的。那么你知道 defer 和 async 是什么嘛?它們兩者有什么區別呢?

回答這些疑問之前,我們先來看下當瀏覽器解析 HTML 遇到 script 標簽的時候會發生什么?

  • 暫停解析 DOM;
  • 執行 script 里的腳本,如果該 script 是外鏈,則會先下載它,下載完成后立刻執行;
  • 執行完成后繼續解析剩余 DOM。

上面這是解析時遇到一個正常的外鏈的情況,正常外鏈的下載和執行都會阻塞頁面解析;而如果外鏈是通過 defer 或者 async 加載的時候又會是如何呢?


defer 特點

  • 對于 defer 的 script,瀏覽器會繼續解析 html,且同時并行下載腳本,等 DOM 構建完成后,才會開始執行腳本,所以它不會造成阻塞;
  • defer 腳本下載完成后,執行時間一定是 DOMContentLoaded 事件觸發之前執行;
  • 多個 defer 的腳本執行順序嚴格按照定義順序進行,而不是先下載好的先執行;

asyn 特點

  • 對于 async 的 script,瀏覽器會繼續解析 html,且同時并行下載腳本,一旦腳本下載完成會立刻執行;和 defer 一樣,它在下載的時候也不會造成阻塞,但是如果它下載完成后 DOM 還沒解析完成,則執行腳本的時候是會阻塞解析的;
  • async 腳本的執行 和 DOMContentLoaded 的觸發順序無法明確誰先誰后,因為腳本可能在 DOM 構建完成時還沒下載完,也可能早就下載好了;
  • 多個 async,按照誰先下載完成誰先執行的原則進行,所以當它們之間有順序依賴的時候特別容易出錯。

defer 和 async 都只能用于外部腳本,如果 script 沒有 src 屬性,則會忽略它們。

動態腳本會造成阻塞嘛

對于如下這段代碼,當刷新瀏覽器的時候會發現頁面上馬上顯示出 我是 h1 標簽,而過幾秒后才加載完動態插入的腳本,所以可以得出結論:動態插入的腳本不會阻塞頁面解析。

  1. <!-- 省略了部分內容 --> 
  2. <script> 
  3.     function loadScript(src) { 
  4.         let script = document.createElement('script'
  5.         script.src = src 
  6.         document.body.append(script) 
  7.     } 
  8.     loadScript('https://cdn.bootcss.com/jquery/2.1.4/jquery.min.js'
  9. </script> 
  10. <h1>我是 h1 標簽</h1> 

動態插入的腳本在加載完成后會立即執行,這和 async 一致,所以如果需要保證多個插入的動態腳本的執行順序,則可以設置 script.async = false,此時動態腳本的執行順序將按照插入順序執行和 defer 一樣。

DOMContentLoaded 和 onload

在瀏覽器中加載資源涉及到 2 個事件,分別是 DOMContentLoaded 和 onload,那么它們之間有什么區別呢?

  • onload:當頁面所有資源(包括 CSS、JS、圖片、字體、視頻等)都加載完成才觸發,而且它是綁定到 window 對象上;
  • DOMContentLoaded:當 HTML 已經完成解析,并且構建出了 DOM,但此時外部資源比如樣式和腳本可能還沒加載完成,并且該事件需要綁定到 document 對象上;

細心的你一定看到了上面的可能二字,為什么當 DOMContentLoaded 觸發的時候樣式和腳本是可能還沒加載完成呢?

DOMContentLoaded 遇到腳本

當瀏覽器處理一個 HTML 文檔,并在文檔中遇到

  1. <script> 
  2.     document.addEventListener('DOMContentLoaded', () => { 
  3.         console.log('DOMContentLoaded'
  4.     }) 
  5. </script> 
  6. <h1>我是 h1 標簽</h1> 
  7. <script src="https://cdn.bootcss.com/jquery/2.1.4/jquery.min.js"></script> 

那么一定是腳本執行完成后才會觸發 DOMContentLoaded 嘛?答案也是否定的,有兩個例外,對于 async 腳本和動態腳本是不會阻塞 DOMContentLoaded 觸發的。

DOMContentLoaded 遇到樣式

前面我們已經介紹到 CSS 是不會阻塞 DOM 的解析的,所以理論上 DOMContentLoaded 應該不會等到外部樣式的加載完成后才觸發,這么分析是對的,讓我們用下面代碼進行測試一翻就知道了:

  1. <!DOCTYPE html> 
  2. <html lang="en"
  3. <head> 
  4.     <meta charset="UTF-8"/> 
  5.     <script> 
  6.         document.addEventListener('DOMContentLoaded', () => { 
  7.         console.log('DOMContentLoaded'
  8.     }) 
  9.     </script> 
  10.     <link href="https://cdn.bootcss.com/bootstrap/4.0.0-alpha.6/css/bootstrap.css" rel="stylesheet"/> 
  11. </head> 
  12. <body> 
  13.     <h1>我是 h1 標簽</h1> 
  14. </body> 
  15. </html> 

測試結果:當樣式還沒加載完成的時候,就已經打印出 DOMContentLoaded,這和我們分析的結果是一致的。但是一定是這樣嘛?顯然不一定,這里有個小坑,(基于上面代碼)在樣式后面再加上 <script> 標簽的時候,會發現只有等樣式加載完成了才會打印出 DOMContentLoaded,為什么會這樣呢?正是因為 <script> 會阻塞 DOMContentLoaded 的觸發,所以當外部樣式后面有腳本(async 腳本和動態腳本除外)的時候,外部樣式就會阻塞 DOMContentLoaded 的觸發。

  1. <!-- 只顯示了部分內容 --> 
  2. <link href="https://cdn.bootcss.com/bootstrap/4.0.0-alpha.6/css/bootstrap.css" rel="stylesheet"/> 
  3. <script></script> 
  4. </head> 

參考文章:

DOMContentLoaded

https://html.spec.whatwg.org/multipage/scripting.html

 

責任編輯:姜華 來源: 大海我來了
相關推薦

2019-06-04 14:15:08

JavaScript V8前端

2019-07-22 15:29:53

JavaScriptGitHub語言

2019-04-26 13:55:02

Istio微服務架構

2021-01-05 09:23:49

網頁端消息

2011-02-28 09:51:43

內省

2011-02-16 16:13:40

Debian

2020-06-11 09:18:34

動靜分離架構架構設計開發

2018-07-05 16:15:26

緩存數據cache miss

2010-08-24 09:19:59

2011-11-19 15:55:41

虛擬化存儲虛擬化日立數據

2017-11-21 14:56:59

2011-05-30 20:51:49

2015-08-26 09:54:19

物聯網

2022-06-13 09:51:35

UWB超寬帶無線載波通信技術

2021-02-19 20:38:01

互聯網衛星系統

2011-08-04 13:24:28

IT運維

2012-05-28 22:49:50

PureView

2015-12-14 15:34:35

開源投資創業

2018-09-10 13:47:21

數據科學統計學決策

2019-05-27 15:30:44

Node.jsJavaScript前端
點贊
收藏

51CTO技術棧公眾號

成人无码av片在线观看| 久久久久久久久久久视频| www天堂在线| 中文亚洲免费| 色偷偷噜噜噜亚洲男人的天堂| 成人av毛片在线观看| av日韩中文| 国产精品美女久久福利网站| 高清av免费一区中文字幕| 中文在线第一页| 综合一区在线| 亚洲欧美在线磁力| 黑人巨大猛交丰满少妇| 日韩在线短视频| 亚洲v中文字幕| 伊人久久大香线蕉成人综合网| 三级视频在线看| 国产在线精品一区二区不卡了| 午夜精品免费视频| 国产精品丝袜一区二区| 国产精品免费99久久久| 精品久久久久久亚洲综合网 | 岛国在线视频| 波多野结衣中文字幕一区二区三区| 国产精品久久久久久久久久免费| 国产一级二级三级视频| 四虎成人精品永久免费av九九| 精品国产欧美一区二区| 国内av一区二区| 日韩欧美精品一区二区综合视频| 亚洲福利视频一区二区| 欧美美女黄色网| 视频免费一区| 国产欧美日本一区视频| 久久99精品久久久久久久青青日本 | 欧美日韩国产高清| 理论片在线不卡免费观看| 欧美偷拍一区二区三区| 偷拍精品福利视频导航| 亚洲国产精品久久久久久| 中国老熟女重囗味hdxx| 在线播放成人| 欧美日韩久久一区二区| 无需播放器的av| 高清欧美日韩| 欧美日韩国产中文| 日本中文字幕精品—区二区| 欧美成人精品三级网站| 欧美在线观看你懂的| jizzjizzxxxx| 欧美人体一区二区三区| 欧美午夜www高清视频| 日韩黄色片视频| 亚洲人成午夜免电影费观看| 欧美视频免费在线| www.四虎成人| 久久91导航| 欧美性视频一区二区三区| 韩国日本美国免费毛片| 欧美影视资讯| 欧美日韩国产小视频在线观看| 亚州精品一二三区| 亚洲最大的免费视频网站| 欧美理论片在线| 青娱乐精品在线| 亚洲午夜免费| 日韩av在线免费| 中文字幕在线看高清电影| 精品日韩欧美一区| 久久精品福利视频| 久久久全国免费视频| 亚洲黄色免费| 国产成人精品电影| 国产女人高潮的av毛片| 国产69精品久久777的优势| 韩国成人av| 国产三级视频在线播放线观看| 亚洲国产成人自拍| 国产911在线观看| 欧美亚洲日本精品| 欧美色涩在线第一页| 91在线第一页| 久久精品论坛| 最近2019中文字幕mv免费看| 麻豆精品一区二区三区视频| 亚洲国产一区二区三区高清 | 一个人看的www久久| 免费黄色激情视频| 亚洲小说区图片区| 国产精品视频不卡| 成 人片 黄 色 大 片| 久久久久久久久久久黄色| 亚洲天堂电影网| 波多野结衣视频一区二区| 一本大道久久a久久精二百| 午夜啪啪小视频| 亚洲动漫在线观看| 欧美日韩成人在线播放| 黄色一级视频免费看| 国产福利一区二区三区视频| 欧美日韩精品免费观看视一区二区| 麻豆传媒在线免费看| 色综合网站在线| 香蕉久久久久久av成人| 成人vr资源| 992tv在线成人免费观看| 97caocao| 国产片一区二区三区| 国产一区 在线播放| 国产精品诱惑| 亚洲美女av电影| 麻豆一区二区三区精品视频| 免费成人性网站| 免费在线观看91| 国产后进白嫩翘臀在线观看视频| 欧美色男人天堂| 自拍视频一区二区| 国产精品a久久久久| 成人免费视频在线观看超级碰| 毛片免费在线观看| 亚洲高清在线视频| 第一页在线视频| 国产精品成人a在线观看| 国产mv久久久| 日本大臀精品| 午夜a成v人精品| 一级黄色免费视频| 欧美视频久久| 99精彩视频| а天堂中文在线官网| 精品视频1区2区| 调教驯服丰满美艳麻麻在线视频 | 97精品国产97久久久久久| 国产欧美熟妇另类久久久 | 国产一区高清| 亚洲一区二区久久| 久久人妻免费视频| 久久毛片高清国产| 国产性xxxx18免费观看视频| 日本天堂一区| 欧美在线视频播放| 天堂av在线免费观看| 亚洲成人午夜电影| 久久久久久久久久影视| 欧美激情一区| 99精彩视频在线观看免费| 亚洲小说区图片| 精品国产一二三| 久草手机在线观看| 久久久蜜桃精品| 精品久久久噜噜噜噜久久图片| 啪啪激情综合网| 国产69精品久久久久久| 你懂的免费在线观看视频网站| 岛国视频午夜一区免费在线观看| 国产精品无码在线| 久久久成人网| 视频一区视频二区视频| 九九热这里有精品| 久久国产精品视频| 蜜臀久久99精品久久久| 欧美日韩国产页| 日本理论中文字幕| 久久av资源站| 国产成人一区二区三区别| 风间由美一区二区av101| 97在线视频一区| 中文字幕在线播放| 日韩三级视频中文字幕| 国产精品免费av一区二区| 久久久久国产精品人| 人人干人人干人人| 国产主播一区| 欧美主播一区二区三区美女 久久精品人 | 在线看成人短视频| 成人福利网站在线观看11| 四虎影视成人| 亚洲视频第一页| 国产毛片毛片毛片毛片毛片| 亚洲大片精品永久免费| 人妻aⅴ无码一区二区三区| 精品一区二区国语对白| 国产精品久久久久久久久电影网| 台湾亚洲精品一区二区tv| 国产精品专区一| 黄色影院在线看| 伊是香蕉大人久久| www.xxx国产| 欧美视频一二三区| 国产一级一片免费播放| 中文字幕精品综合| 亚洲成年人在线观看| 七七婷婷婷婷精品国产| 国产精品无码电影在线观看| 国产日韩视频在线| 国产经品一区二区| 啪啪av大全导航福利综合导航| 欧美疯狂做受xxxx高潮| a√在线中文网新版址在线| 精品成a人在线观看| 在线观看免费观看在线| 午夜精品久久久久久久久久久| 毛片视频免费播放| 久久色.com| 挪威xxxx性hd极品| 狠狠色狠狠色综合系列| 日本xxxxxxx免费视频| 亚洲一级网站| 五月天综合婷婷| 精品久久久久久久| 国产在线资源一区| 精品三级久久久| 国产精品久久久久久一区二区| 51漫画成人app入口| 欧美成人免费全部观看天天性色| 飘雪影院手机免费高清版在线观看| 日韩一区二区三区四区五区六区| 国产乡下妇女三片| 欧美性极品少妇精品网站| 九九久久免费视频| 亚洲婷婷综合色高清在线| 国产亚洲精品熟女国产成人| 成人av网址在线| 深夜视频在线观看| 国产大陆精品国产| 黄色小视频免费网站| 日本午夜一本久久久综合| 成人在线激情网| 免费日韩av| 亚洲午夜精品久久久久久人妖| 黄色成人91| 91午夜在线观看| 欧美性久久久| 国产欧美日韩小视频| 国产精品激情| 你真棒插曲来救救我在线观看| 狠狠爱综合网| 91午夜在线观看| 怡红院精品视频在线观看极品| 日本黄网站色大片免费观看| 91精品国产调教在线观看| 一区二区不卡在线观看| 欧美wwwww| 亚洲午夜精品久久久久久浪潮| 国内精品久久久久久久久电影网| 欧洲精品久久| 精品日韩免费| 一区二区三区在线观看www| 国产精品99视频| 黄色一级片网址| 欧美激情视频一区二区三区免费| 国产精品久久久影院| 国产在线成人| 国产日产欧美视频| 三级久久三级久久| 视频二区在线播放| 韩国成人精品a∨在线观看| 日韩欧美色视频| 成人黄色在线视频| 国产精品揄拍100视频| 国产欧美日韩综合精品一区二区| 免费一级特黄3大片视频| 中文字幕亚洲一区二区av在线 | 欧美日韩国产在线一区| 久久av综合网| 亚洲免费中文| 欧美大尺度做爰床戏| 国产伦精品一区二区三区在线观看| 美女被艹视频网站| 99精品黄色片免费大全| 丰满圆润老女人hd| 国产精品久久99| 久久久久久av无码免费网站| 欧美日韩激情小视频| 亚洲图片欧美日韩| 日韩一区和二区| 成人精品一二区| av蜜臀在线| 日韩av免费在线| 国产精品麻豆| 久久精彩视频| 午夜精品一区二区三区国产| 丁香婷婷综合激情| 日韩精品视频网站| 亚洲一级Av无码毛片久久精品| 26uuu欧美日本| 亚洲精品久久久久久国| 午夜久久久影院| 在线观看免费观看在线| 亚洲国产一区二区三区在线观看| eeuss影院www在线观看| 欧美精品福利视频| 国产原创一区| 黄色国产精品一区二区三区| 欧美艳星介绍134位艳星| 欧美 日韩 国产精品| 视频在线观看一区| 在线观看亚洲免费视频| 欧美极品美女视频| 国产午夜福利一区二区| 欧美精品少妇一区二区三区| 天天综合网在线观看| 久久影院中文字幕| 欧美三区四区| 国产日韩一区欧美| 综合天堂av久久久久久久| 人人干人人视频| 91亚洲精华国产精华精华液| 久久免费看少妇高潮v片特黄| 91福利资源站| 完全免费av在线播放| av加勒比在线| 深夜福利一区二区| 日韩免费福利视频| 狠狠干一区二区| 精品人妻一区二区三区浪潮在线| 天堂俺去俺来也www久久婷婷| 91精品国产综合久久香蕉的用户体验 | 日韩精品系列| 欧美精品videosex性欧美| 偷拍自拍亚洲| 午夜精品一区二区三区在线观看| 99精品热6080yy久久| 欧美日韩一区二区区| 97久久超碰精品国产| 欧美黄色免费在线观看| 7777精品久久久大香线蕉| av午夜在线| 国产精品久久色| 亚洲国产最新| 777米奇影视第四色| 91影院在线免费观看| 波多野结衣国产| 日韩av在线精品| 美女高潮在线观看| 国产综合欧美在线看| 日韩免费不卡视频| 亚洲乱码日产精品bd| 国产又粗又黄又爽视频| 色yeye香蕉凹凸一区二区av| 一二区成人影院电影网| 日本一区二区久久精品| 日韩在线卡一卡二| 亚洲码无人客一区二区三区| 色综合视频在线观看| 蜜桃成人在线视频| 国产成人综合久久| 欧美日韩性在线观看| 91插插插插插插插插| 中文av一区二区| 99久久国产热无码精品免费| 美女啪啪无遮挡免费久久网站| 国内不卡的一区二区三区中文字幕 | 九色蝌蚪在线| 国产欧美一区二区三区视频 | 九九精品久久久| 18成人在线观看| 亚洲精品国产一区二| 97人洗澡人人免费公开视频碰碰碰| 欧美日韩一区二区三区四区不卡 | 精品一区二区三区在线播放 | 国产一区日韩一区| 性久久久久久久久久久| 色一区在线观看| 日本免费视频在线观看| 亚洲一区二区中文| 亚洲精品在线二区| 国产美女免费网站| 欧美精品777| 毛片大全在线观看| 久久涩涩网站| 久久69国产一区二区蜜臀| 免费一级肉体全黄毛片| 日韩成人性视频| 成人1区2区| 99久久免费观看| 久久久久久免费| 精品国产无码一区二区三区| 性色av一区二区三区免费| 黑丝美女一区二区| 国产男女无遮挡猛进猛出| 黑丝美女久久久| 老司机在线视频二区| 精品国产中文字幕| 精品一区二区在线播放| 久久亚洲天堂网| 久久这里有精品视频| 亚洲免费观看高清完整版在线观| 日本 片 成人 在线| 亚洲尤物在线视频观看| 国产精品一级伦理| 粉嫩av四季av绯色av第一区| 日韩激情视频网站| 国产一级二级三级| 日韩在线视频播放| 欧美欧美黄在线二区| 国内自拍偷拍视频| 欧美午夜电影网| 色老头在线一区二区三区| 91制片厂免费观看|