欧美精品在线一区二区三区_亚洲女同精品视频_日韩一区免费_国产欧美久久久精品免费_国产这里只有精品_僵尸再翻生在线观看_久久99精品国产一区二区三区_亚洲免费一区二区_女教师淫辱の教室蜜臀av软件_中文字幕国产一区二区

你真的了解重排和重繪嗎?

2020-4-11    前端達(dá)人

做過前端開發(fā)的小伙伴就算不是非常理解重排與重繪,但是肯定都聽過這兩個(gè)詞。那為什么這兩個(gè)東西這么重要?因?yàn)樗c我們的頁(yè)面性能息息相關(guān),今天,我們就來好好研究一下這兩個(gè)東西。



瀏覽器的渲染流程

在講解重排和重繪之前,我們有必要說一下瀏覽器的渲染流程。下面是瀏覽器渲染過程中最關(guān)鍵的幾個(gè)部分。如果想了解完整的瀏覽器渲染流程,推薦大家去閱讀李兵老師的瀏覽器工作原理實(shí)踐,需要付費(fèi)閱讀。后期我也會(huì)整理一下再出一篇博客詳細(xì)介紹瀏覽器的渲染過程。


點(diǎn)擊查看原圖


JavaScript:一般來說,我們會(huì)使用 JavaScript 來實(shí)現(xiàn)一些視覺變化的效果。比如用 jQuery 的 animate 函數(shù)做一個(gè)動(dòng)畫、對(duì)一個(gè)數(shù)據(jù)集進(jìn)行排序或者往頁(yè)面里添加一些 DOM 元素等。當(dāng)然,除了 JavaScript,還有其他一些常用方法也可以實(shí)現(xiàn)視覺變化效果,比如:CSS Animations、Transitions 和 Web Animation API。
樣式計(jì)算:此過程是根據(jù)匹配選擇器(例如 .headline 或 .nav > .nav__item)計(jì)算出哪些元素應(yīng)用哪些 CSS 規(guī)則的過程。從中知道規(guī)則之后,將應(yīng)用規(guī)則并計(jì)算每個(gè)元素的最終樣式。
布局:在知道對(duì)一個(gè)元素應(yīng)用哪些規(guī)則之后,瀏覽器即可開始計(jì)算它要占據(jù)的空間大小及其在屏幕的位置。網(wǎng)頁(yè)的布局模式意味著一個(gè)元素可能影響其他元素,例如 元素的寬度一般會(huì)影響其子元素的寬度以及樹中各處的節(jié)點(diǎn),因此對(duì)于瀏覽器來說,布局過程是經(jīng)常發(fā)生的。
繪制:繪制是填充像素的過程。它涉及繪出文本、顏色、圖像、邊框和陰影,基本上包括元素的每個(gè)可視部分。繪制一般是在多個(gè)表面(通常稱為層)上完成的。
合成:由于頁(yè)面的各部分可能被繪制到多層,由此它們需要按正確順序繪制到屏幕上,以便正確渲染頁(yè)面。對(duì)于與另一元素重疊的元素來說,這點(diǎn)特別重要,因?yàn)橐粋€(gè)錯(cuò)誤可能使一個(gè)元素錯(cuò)誤地出現(xiàn)在另一個(gè)元素的上層。
其中,重排和重繪影響的就是其中的布局和繪制過程。

什么是重排和重繪制
重排:當(dāng)DOM的變化引發(fā)了元素幾何屬性的變化,比如改變?cè)氐膶捀撸氐奈恢茫瑢?dǎo)致瀏覽器不得不重新計(jì)算元素的幾何屬性,并重新構(gòu)建渲染樹,這個(gè)過程稱為“重排”。
重繪:完成重排后,要將重新構(gòu)建的渲染樹渲染到屏幕上,這個(gè)過程就是“重繪”。
簡(jiǎn)單來說,涉及元素的幾何更新時(shí),叫重排。而只涉及樣式更新而不涉及幾何更新時(shí),叫重繪。對(duì)于兩者來說,重排必定引起重繪,但是重繪并不一定引起重排。所以,當(dāng)涉及重排時(shí),瀏覽器會(huì)將上述的步驟再次執(zhí)行一遍。當(dāng)只涉及重繪時(shí),瀏覽器會(huì)跳過Layout步驟,即:


點(diǎn)擊查看原圖


而如果既不需要重排,也不需要重繪,那么就是下面這樣:


點(diǎn)擊查看原圖



瀏覽器會(huì)直接跳到合成階段。顯然,對(duì)于頁(yè)面性能來說,不重排也不重繪 > 重繪 > 重排。

什么操作會(huì)引起重排和重繪
顯然,觸發(fā)重排的一般都是幾何因素,這是比較好理解的:

頁(yè)面第一次渲染 在頁(yè)面發(fā)生首次渲染的時(shí)候,所有組件都要進(jìn)行首次布局,這是開銷最大的一次重排
瀏覽器窗口尺寸改變
元素位置和尺寸發(fā)生改變的時(shí)候
新增和刪除可見元素
內(nèi)容發(fā)生改變(文字?jǐn)?shù)量或圖片大小等等)
元素字體大小變化
還有其他一些操作也可能引發(fā)重排

查詢某些屬性或調(diào)用某些方法
offset(Top|Left|Width|Height)
scroll(Top|Left|Width|Height)
client(Top|Left|Width|Height)
getComputedStyle()
我們可能不太理解為什么這些操作也能引起重排,這里我先簡(jiǎn)單解釋一下。因?yàn)楝F(xiàn)在的瀏覽器已經(jīng)非常完善了,會(huì)自動(dòng)幫我們做一些優(yōu)化。當(dāng)我們用js操作DOM的時(shí)候,瀏覽器并不是立馬執(zhí)行的,而是將操作存儲(chǔ)在一個(gè)隊(duì)列中。當(dāng)達(dá)到一定數(shù)量或者經(jīng)過一定時(shí)間以后瀏覽器再統(tǒng)一的去執(zhí)行隊(duì)列中的操作。那么回到我們剛才的問題,為什么查詢這些屬性也會(huì)導(dǎo)致重排?因?yàn)楫?dāng)你查詢這些屬性時(shí),瀏覽器就會(huì)強(qiáng)制刷新隊(duì)列,因?yàn)槿绻涣ⅠR執(zhí)行隊(duì)列中的操作,有可能得到的結(jié)果就是錯(cuò)誤的。所以相當(dāng)于你強(qiáng)制打斷了瀏覽器的優(yōu)化流程,引發(fā)了重排。下面我們通過一些小例子來進(jìn)一步理解這段話:

首先我們來一個(gè)顯然會(huì)引發(fā)重排的操作

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <style>
    #test {
      width: 100px;
      height: 100px;
      background-color: red;
      position: relative;
    }
  </style>
</head>
<body>
  <div id="test">

  </div>
  <button onclick="reflow()">click</button>
  <script>
    function reflow() {
      var div = document.querySelector("#test");
      div.style.left = '200px';
    }
  </script>
</body>
</html>



把時(shí)間軸往后拉,可以看到這幾個(gè)過程,先簡(jiǎn)單介紹一些這些名詞代表的含義:

Recalculate Style:這個(gè)過程就是生成CSSOM的過程
Layout:這就是布局階段,即重排的過程
Update Layer Tree:這個(gè)階段是更新層樹的過程
Paint:該階段是為每一層準(zhǔn)備繪制列表的過程
Composite Layers:該階段是利用繪制列表來生成相應(yīng)圖層的位圖了,還涉及到合成線程和光柵化,performence面板中的Raster就是光柵化線程池 。
這里只做一個(gè)簡(jiǎn)單的介紹,對(duì)其中內(nèi)容不太明白的同學(xué)可以參考李兵老師的文章或者在我的下一篇介紹瀏覽器渲染過程的文章中會(huì)詳細(xì)解釋。

那通過這個(gè)圖我們可以看到,我們改變了div的left之后就觸發(fā)了Layout,即重排的過程。下面我們僅改變div的背景顏色,給大家一個(gè)對(duì)比。


即不重排也不重繪
說完了重排和重繪,不要忘記我們最開始提到的,最的方式就是跳過重排和重繪階段。你可能會(huì)想,什么情況下可以做到這一點(diǎn)?其實(shí)這就是我們平時(shí)說的GPU加速,具體是如何實(shí)現(xiàn)呢?在開發(fā)過程中,如果我們使用了某些屬性,瀏覽器會(huì)幫助我們將使用了該屬性的div提升到一個(gè)單獨(dú)的合成層,而在后面的渲染中,提升到該層的div將跳過重排和重繪的操作,直接到合成階段。在stack overflow上有問題提到了這塊內(nèi)容。我們翻譯一下就是:
下面幾個(gè)屬性能讓瀏覽器幫助我們將div提升到一個(gè)單獨(dú)的合成層:

圖層具有3D或透視變換CSS屬性
使用加速視頻解碼的 video 元素
擁有 3D(WebGL) 上下文或者加速 2D 上下文的 canvas 元素
混合插件(Flash)
對(duì)自己的 opacity 做 CSS 動(dòng)畫或使用一個(gè)動(dòng)畫 webkit 變換的元素
圖層使用加速的CSS過濾器
層具有作為合成層的后代
圖層具有較低z索引的同級(jí)元素,該同級(jí)元素具有合成層(換句話說,該層在合成層的頂部渲染)
css will-change屬性
最后一點(diǎn)是我加上去的,同時(shí)根據(jù)文中的內(nèi)容我們可以知道,css3硬件加速是瀏覽器的行為,所以在不同瀏覽器下可能會(huì)有不同的表現(xiàn)形式。下面我們用一個(gè)例子來理解一下。這是李兵老師在他的專欄中提出的一個(gè)例子,我拿過來借用一下,注意box中的will-change屬性:

<html>

  <head>
      <title>觀察will-change</title>
      <style>
          .box {
              will-change: transform, opacity;
              display: block;
              float: left;
              width: 40px;
              height: 40px;
              margin: 15px;
              padding: 10px;
              border: 1px solid rgb(136, 136, 136);
              background: rgb(187, 177, 37);
              border-radius: 30px;
              transition: border-radius 1s ease-out;
          }

          body {
              font-family: Arial;
          }
      </style>
  </head>

  <body>
      <div id="controls">
          <button id="start">start</button>
          <button id="stop">stop</button>
      </div>
      <div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
          <div class="box">旋轉(zhuǎn)盒子</div>
      </div>
      <script>

          let boxes = document.querySelectorAll('.box');
          let boxes1 = document.querySelectorAll('.box1');
          let start = document.getElementById('start');
          let stop = document.getElementById('stop');
          let stop_flag = false

          start.addEventListener('click', function () {
              stop_flag = false
              requestAnimationFrame(render);
          })

          stop.addEventListener('click', function () {
              stop_flag = true
          })

          let rotate_ = 0
          let opacity_ = 0
          function render() {
              if (stop_flag)
                  return 0
              rotate_ = rotate_ + 6
              if (opacity_ > 1)
                  opacity_ = 0
              opacity_ = opacity_ + 0.01
              let command = 'rotate(' + rotate_ + 'deg)';
              for (let index = 0; index < boxes.length; index++) {
                  boxes[index].style.transform = command
                  boxes[index].style.opacity = opacity_
              }
              requestAnimationFrame(render);
          }
      </script>
  </body>

  </html>



————————————————
版權(quán)聲明:本文為CSDN博主「溪寧」的原創(chuàng)文章,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議,轉(zhuǎn)載請(qǐng)附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_38164763/article/details/105406580

日歷

鏈接

個(gè)人資料

存檔

亚洲精品日本| 欧美三区在线观看| 午夜视频在线免费观看| 黄色裸体一级片| 杨幂一区欧美专区| 精品在线视频一区二区| 国产精品自产拍在线观看| 久久99久久久久久久噜噜| 日韩精品丝袜在线| 亚洲国产成人porn| 1区2区3区国产精品| 久久综合色8888| 国产激情91久久精品导航| 日韩二区在线观看| 亚洲尤物影院| 午夜在线a亚洲v天堂网2018| 久久精品二区亚洲w码| 日韩av高清在线观看| 国产一区白浆| 美女黄网久久| 蜜臀国产一区二区三区在线播放| 天堂蜜桃91精品| 日韩成人免费电影| 91网上在线视频| 久久影音资源网| 精品福利一区二区| 色综合天天做天天爱| 日本乱人伦一区| 欧美日韩一区高清| 中文字幕9999| 精品国内产的精品视频在线观看| 中文字幕在线成人| 国产精品日韩久久久久| 成人美女av在线直播| 91久久精品国产| 高清一区二区三区视频| 国产精品视频一区二区三区经| 国内精品一区二区| 欧美精品欧美精品| 伊人久久99| wwwjizzjizzcom| 九色自拍视频在线观看| 午夜精品久久久内射近拍高清 | 男人天堂手机在线观看| 亚洲精选一区二区三区| 无码精品人妻一区二区三区影院 | 成人福利在线观看视频| 黄色片网站在线观看| 成年人视频免费在线播放| 青草在线视频| 日韩欧美看国产| 国产乱子精品一区二区在线观看| 91国内外精品自在线播放| 欧美a视频在线| 一区二区三区午夜视频| 99亚洲一区二区| 九九精品视频在线看| 99久久久久久| **性色生活片久久毛片| 日韩一区二区三免费高清| 亚洲精品国产福利| 久久久精品免费视频| 99久久综合狠狠综合久久止 | 欧美一区二区三区在线观看| 日韩欧美在线不卡| 亚洲国产欧美日韩精品| 国产精品成人av性教育| 97av影视网在线观看| 婷婷精品国产一区二区三区日韩 | 国产精品久久无码| 欧美日韩国产一二三区| 久久一区二区三区视频| av中文字幕观看| 免费av在线电影| www视频在线观看| 精品一区二区三区免费看| 女仆av观看一区| 欧美日本二区| 久久69国产一区二区蜜臀| 性欧美大战久久久久久久久| 91精品国产品国语在线不卡| 欧美在线xxx| 国产一区免费在线观看| 婷婷激情综合五月天| 最新日韩免费视频| 在线免费国产| 亚洲欧美小说色综合小说一区| 一本一道久久a久久| 国产国产精品| 国产福利不卡视频| 在线不卡免费欧美| 欧美激情极品视频| 国产精品手机视频| 欧美xxxxx少妇| 日韩免费av片| 国产视频手机在线| 日本中文字幕伦在线观看| 少妇一区二区三区| 久久尤物视频| 91国偷自产一区二区三区成为亚洲经典| 久久久久国产精品免费网站| 国产欧美日韩伦理| 800av在线播放| 中文字幕理伦片免费看| 国内高清免费在线视频| 欧美一区二区| 91在线一区二区三区| 日韩欧美在线播放| 色综合伊人色综合网| 国产在线久久久| 777久久精品一区二区三区无码| 91亚洲一区二区| 亚洲国产精一区二区三区性色| 五月婷婷在线观看| 欧美另类视频| 一本色道久久综合精品竹菊| 国产精品日日摸夜夜添夜夜av| 九九热精品在线播放| 日本中文在线视频| 黄页网址在线观看| 亚洲精品乱码日韩| 国产一区二区三区久久| 在线日韩国产精品| 2025国产精品视频| 在线观看免费黄网站| av成人免费网站| 美臀av在线| 欧美老女人另类| 99久久99久久精品国产片果冻| 国产视频久久久久久久| 国产又黄又爽免费视频| 久久丫精品国产亚洲av不卡| 国产三级午夜理伦三级| 精品国产乱码久久久久久樱花| 国产精品18久久久久久久久 | 嫩草视频免费在线观看| 亚洲国产精一区二区三区性色| 菠萝蜜视频在线观看www入口| 视频一区二区三区入口| 日韩亚洲欧美综合| 亚洲精品美女久久7777777| 男插女视频网站| 亚洲女人天堂| 激情av一区| 一区二区三区日韩欧美精品| 尤物tv国产一区| 久久国产精品一区二区三区| 永久免费看片在线观看| 亚洲午夜激情视频| 高清视频在线观看三级| 国内成人自拍视频| 欧美日韩国产高清一区二区三区| 51午夜精品视频| 九色91porny| 国产香蕉在线| 日韩人体视频| 亚洲一区二区三区四区在线| 久久人人爽亚洲精品天堂| 可以在线看的黄色网址| 国产美女激情视频| 免费电影网站在线视频观看福利| 老鸭窝一区二区久久精品| 亚洲欧美激情视频| 欧美三级电影在线播放| 国产成人在线免费观看视频| 在线观看欧美| 国产精品一区二区在线观看网站| 91精品欧美久久久久久动漫| 亚洲在线一区二区| 日本精品一二三区| 五月婷婷丁香六月| 91精品国产乱码久久久久久| 亚洲日本青草视频在线怡红院 | 亚洲精品欧美极品| 强乱中文字幕av一区乱码| 91高清在线| 这里只有精品在线| 日韩欧美一区在线| 加勒比成人在线| 九草视频在线观看| 国产精品一区亚洲| 国产一区二区久久精品| 四虎4hu永久免费入口| 国产老妇伦国产熟女老妇视频| 国产精品xxx| 亚洲情趣在线观看| 国产精品福利视频| 黄色片免费观看视频| 国产主播性色av福利精品一区| aaa亚洲精品| 欧美一区视频在线| 啪啪一区二区三区| 国产一区 二区| 久久久久国产免费免费 | 日韩欧美亚洲视频| 亚洲区小说区图片区qvod| 国产精品毛片高清在线完整版| xvideos亚洲人网站| 欧美二区在线视频| 国产女同91疯狂高潮互磨| 亚洲成人精选| 视频一区二区三区中文字幕| 精品人妻二区中文字幕| 亚洲高清在线观看| 久久人人爽人人爽人人片av高清| 国产精品动漫网站| 国产福利电影在线| 国产不卡在线视频| 久久视频在线看| 牛夜精品久久久久久久| 麻豆视频在线观看免费| 男人的天堂亚洲| 九九久久精品一区| 俄罗斯毛片基地| 电影在线观看一区| 亚洲欧美日韩国产一区二区三区| 日本精品久久电影| 亚洲第一中文av| 亚洲区欧洲区| 国产一区欧美日韩| 日韩亚洲欧美成人| 亚洲最大成人网站| 福利写真视频网站在线| 国产精品私人自拍| 国产精品久久久久aaaa九色| 久久高清免费视频| 中文字幕一区二区三区欧美日韩| 伊人久久男人天堂| av网站免费在线看| 国产传媒在线观看| 亚洲午夜一二三区视频| 吴梦梦av在线| 国产成人天天5g影院在线观看| 91在线国内视频| 精品国产免费久久久久久尖叫| 亚洲av永久无码国产精品久久| 日本在线不卡视频| 国产精品一区二区3区| 久久久久久无码精品大片| 国产精品网址| 亚洲成人精品视频在线观看| 亚洲一区二区图片| 久久久免费人体| 91精品免费观看| 麻豆传媒在线看| 国产一区二区三区亚洲综合| 91麻豆精品久久久久蜜臀| 久久精品一卡二卡| 国产中文欧美日韩在线| 欧美一区二区福利在线| 美女露出粉嫩尿囗让男人桶| 看亚洲a级一级毛片| 精品国内片67194| 国产免费成人在线| 忘忧草在线日韩www影院| 色综合激情久久| 天堂一区在线观看| 亚洲狼人在线| 亚洲精品国产免费| www成人啪啪18软件| 91视频精品| 日韩av一区二区在线| 亚洲黄色小说视频| 成人免费a**址| 亚洲第一视频网| 欧美熟妇一区二区| 日韩国产专区| 亚洲精品videossex少妇| av在线网站观看| 欧美人妖在线| 亚洲第一区中文99精品| 一区二区精品免费| 99久久夜色精品国产亚洲狼 | 日韩免费在线观看视频| 一级黄色大片免费| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 亚洲国产激情av| 国产美女永久无遮挡| 污视频网站在线| 国产精品12区| 婷婷久久伊人| 欧美人与动牲性行为| 91福利社在线观看| 国产熟女高潮一区二区三区 | 国产一区二区导航在线播放| 免费一区二区三区| 肥臀熟女一区二区三区| 日韩电影在线免费观看| av在线亚洲男人的天堂| 欧美视频免费一区二区三区| 一区二区成人在线视频| 中文字幕色一区二区| 国产精品蜜臀| 日韩午夜av电影| 国产三级国产精品国产国在线观看| 亚洲激情欧美| julia一区二区中文久久94| 蜜桃视频在线观看视频| 激情成人中文字幕| 国产在线不卡av| 欧美在线视屏| 97se在线视频| 黄色视屏免费在线观看| 91精品国产麻豆| 国产极品国产极品| 蜜臀av性久久久久蜜臀aⅴ四虎 | 亚洲欧美日韩免费| 一区二区三区久久| 亚洲av永久无码精品| 亚洲一区导航| 久久精品国产一区| 国产富婆一级全黄大片| 中文字幕av一区二区三区高| www黄色在线| 欧美日韩电影免费看| 精品呦交小u女在线| 国产又爽又黄的视频| 丰满白嫩尤物一区二区| 成人性生活视频免费看| 国产精品日韩精品在线播放| 久热精品在线视频| 少妇精品视频一区二区| 91片黄在线观看| 午夜免费精品视频| 精品免费一区二区| 91免费欧美精品| 成人影欧美片| 日韩电影网在线| 欧美激情一区二区三区免费观看| 美女一区二区三区| 可以在线看黄的网站| 精品国产亚洲一区二区在线观看| 色在人av网站天堂精品| 五月婷婷六月丁香综合| 欧美日韩精品中文字幕| 在线观看免费不卡av| 区一区二视频| 国产精品theporn88| av资源网在线播放| 欧美精品18+| 日韩和一区二区| 久久久久久久性| 亚洲成人av免费观看| 欧美日韩第一区| 特级西西444www大精品视频| 韩国理伦片久久电影网| 欧美激情一区二区三区成人| 一色桃子在线| 日韩一区二区在线免费观看| 波多野结衣 久久| 狠狠色丁香久久婷婷综| 大j8黑人w巨大888a片| 成人中文视频| 韩国成人一区| 日韩一级特黄| 国产va免费精品高清在线观看| av无码精品一区二区三区宅噜噜| 亚洲乱码中文字幕综合| 国产jk精品白丝av在线观看| 精品亚洲成a人在线观看| 无码人妻h动漫| 欧美.www| 艳母动漫在线观看| 国产一区二区主播在线| 亚洲男人天堂视频| 亚洲国产精品久久人人爱潘金莲| 欧美色另类天堂2015| 国产一级免费av| 国产在线视频不卡二| 国产三级三级三级看三级| 亚洲一区二区日韩| 91制片厂免费观看| 欧美日韩色图| 日韩jizzz| 希岛爱理一区二区三区av高清| 欧美激情精品久久久久久变态| 成人综合影院| 欧美日韩高清影院| 亚洲中文无码av在线| 偷拍与自拍一区| av资源免费观看| 亚洲国产成人porn| 日本一区二区不卡在线| 亚洲免费看黄网站| 久久久久久久久久久久久久免费看| 久久se精品一区二区| 88av.com| 丝袜亚洲精品中文字幕一区| 成人午夜视频免费在线观看| 亚洲婷婷在线| 欧美成人xxxxx| 久久99国内| 日韩av一级大片| 成人久久综合| 亚洲黄色网址在线观看| 我不卡神马影院| 亚洲理论电影在线观看| 久久久久97| 国产精品视频成人| 成人av色网站|