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

這幾種解決方案讓你的首屏加載快到起飛!

開發 前端
preload?是告訴瀏覽器頁面必定需要的資源,瀏覽器一定會加載這些資源,而prefetch是告訴瀏覽器頁面可能需要的資源,瀏覽器不一定會加載這些資源。

首屏加載的意義不言而喻,畢竟第一印象最重要,直接影響用戶體驗和留存。當用戶使用你的產品的時候,一上來半天刷不出首頁,很多用戶往往就直接給你Ctrl+F4了。

那么問題來了,怎么做首屏優化。在了解怎么優化之前,我們需要知道首屏加載的幾個重要時刻。

圖片圖片

  • 首次加載
  • 什么時候加載出頁面
  • 什么時候用戶可以交互

為此,我們可以從以下幾個方面來進行相關的優化。

資源體積太大

資源壓縮與合并/代碼拆分

將小圖片內聯為Data URL,也可以額減小HTTP的請求數量,需要注意的是,瀏覽器緩存并不會存儲Data URL格式的圖片,放在css的background-image屬性中即可。由于使用Data URL在渲染和CPU消耗上更大,所以使用時也需要謹慎而不應該一味的濫用。

通過以上幾種方法,我們主要要解決的問題是以下幾個

  • 減少HTTP請求數量
  • 減少請求資源的大小
  • 減少不必要的代碼

需要注意的是,在CSS和JS合并的時候我們需要謹慎,并非所有CSS和JS合并都是好的,不能一味的為了做首屏或者性能優化而引發了其他方面的問題。在有若干個小文件的時候,或者是沒有沖突的同模塊的文件的時候是可以考慮合并的。但是如果我們把其他不同模塊的CSS和JS也合并到了一起,可能會給后續的解析處理和自己的代碼維護帶來問題,而且JS文件間還可能會出現命名空間的沖突。這些都是無腦的資源合并會帶來的問題。

傳輸壓縮

  • Gzip ??需要注意的是,太小的文件啟用Gzip以后可能反而會增大,這是因為壓縮前會寫入一段映射字典,但是這個是Byte層面的可以忽略不計。

HTTP2.0和HTTP1.1

圖片圖片

3630394917-5b229aa26f852_fix732.png

圖上簡單概括就是:

  • HTTP1.1的keep-alive默認開啟,而且keep-alive是按順序請求返回,等到上一個請求返回以后才會進行下一個請求,會有阻塞問題。keep-alive的請求順序如下:
  • 1.請求style.css
  • 2.返回style.css
  • 3.請求script.js
  • 4.返回script.js ??如何判斷是否開啟了keep-alive可以從Response Headers看到,切記是HTTP1.1中的。

圖片圖片

  • 但是HTTP2.0就不一樣了,HTTP2.0的多路復用可以一次性發送多個請求,不一定是按順序也不需要等待上一個請求返回。這些請求都有唯一標識,所以可以無序。

比較詳細的內容在面試點之《HTTP協議與TCP/IP協議》[1]中有。

HTTP緩存

在此之前,我們要熟悉兩個概念,強緩存和協商緩存。

圖片圖片

強緩存:瀏覽器直接從本地緩存中取數據,而不用去請求服務器。Expires/Cache-Control(優先級更高,且為通用字段,請求和返回報文中都可以使用)

圖片圖片

  • Cache-Control常見的屬性有很多:
  • max-age:單位是秒,意為緩存的持續時間(壽命)。比如Cache-Control:max-age=60;意為60秒內會直接使用該緩存,而max-age<=0時則每次都要發送請求驗證緩存是否有修改,改了的話返回200,沒改返回304;
  • no-store:不使用緩存,直接去服務器請求數據;
  • no-cache:不緩存過期資源;客戶端會要求緩存服務器不要從緩存拿數據,而是去請求源服務器,源服務器會告訴緩存服務器,使用緩存時先告訴我驗證一下。區別在于直接使用緩存是不會請求源服務器的。
  • public:表明響應可以被任何對象(發送請求的客戶端,代理服務器等等)緩存;
  • privite:表明響應只能被單個用戶緩存,不能作為共享緩存(即代理服務器不能緩存它);
  • Expires:GMT格式的時間字段,意為到期時間。超過此時間以后資源作廢。缺點在于是和本地時間比較,本地時間可能存在誤差。也可以設置為0或者負數,此時不使用緩存直接從服務器重新請求數據。

協商緩存:瀏覽器發送請求到服務器,服務器判斷是否使用本地緩存。

Etag(響應頭中)和If-None-Match(請求頭中)【優先級更高】

圖片圖片

??兩者的值都是該資源的唯一標識字符串。第一次請求時,響應頭(Response Headers)中會添加一個Etag的字段,再次請求服務器時,會在請求頭報文(Request Headers)中添加If-None-Match字段,它的值就是上次響應頭(Response Headers)中的Etag值。服務器會比較兩個值是否相同。

  • 相同: 返回狀態碼304 Not Modified,直接取用本地緩存即可。
  • 不相同: 說明資源內容已經發生了變化,此時接受請求,返回最新的數據,并更新Etag值。Etag中可能會有W/這樣的標識,W/(大小寫敏感) 表示使用弱驗證器。弱驗證器很容易生成,但不利于比較。強驗證器是比較的理想選擇,但很難有效地生成。相同資源的兩個弱Etag值可能語義等同,但不是每個字節都相同。

需要特別注意的是,Etag變化并不代表文件內容一定變化,Etag的值取決于服務端的算法。比如Etag的值由最后一次修改時間+內容經過哈希算法而得,但是此時我編輯了內容并沒有修改內容,最后一次的修改時間會發現變化,此時的Etag值肯定也會變化,但是內容并沒有發生改變

Last-Modified(響應頭中)和If-Modified-Since(請求頭中)

圖片圖片

??如圖所示,兩者的值都是GMT格式的時間字符串,Last-Modified意為最后一次修改文件的時間,其實這個方法和上一種原理一樣,只不過一個是用唯一標識字符串來比較,一個是用最后一次修改的時間來比較。也是第一次請求時,響應頭(Response Headers)中會添加一個Last-Modified的字段,記錄了最后一次文件修改的時間,然后再次請求時,會在請求頭(Request Headers)中添加If-Modified-Since字段,值就是上一次響應時響應頭中Last-Modified的值。服務器會比較Last-Modefied和Last-Modefied-Since的值。

  • 相同: 返回狀態碼304 Not Modified,直接取用本地緩存即可。
  • 不相同: 說明資源內容已經發生了變化,此時接受請求,返回最新的數據,并更新Last-Modified值。
兩者的區別
  • 當一個文件周期性修改而文件內容并沒有修改的時候,Last-Modified還是會從服務器請求新的數據,這并不是我們希望看到的,這個時候Etag能更好的處理這種情況。
  • Last-Modified的精準度只有秒,當一秒內修改多次時,這種修改無法判斷。??所以Etag的精度和適用性要強于Last-Modefied,兩者雖然可以同時使用,但是服務器會優先驗證Etag。

首次進入白屏時間過長

骨架屏(vue-content-placeholders)

效果如下圖:(圖片來源網絡,侵刪)

圖片圖片

我使用的是這個插件vue-content-placeholders[2],其次,骨架屏是需要自己畫的,你需要把布局畫好做成一個組件,在需要的頁面引用,然后等數據請求回來以后隱藏掉再顯示正常的頁面就可以。通常僅僅在接口請求比較多的頁面用到骨架屏,畢竟當你的頁面改動的時候骨架屏的頁面布局也需要改動,如果每個頁面都使用骨架屏未免太浪費開發時間也增加了日后的維護成本。

  • root <content-placeholders>(以下三個屬性會應用到所有子組件中)
  • animated (default: true; type: Boolean):是否開啟動畫效果
  • rounded (default: false; type: Boolean):是否加上邊角度,等同于設置border-radius
  • centered (default: false; type: Boolean):是否同時垂直+水平居中顯示
  • <content-placeholders-heading />
  • img (default: false; type: Boolean):是否顯示圖片模塊

圖片圖片

  • <content-placeholders-text />
  • lines (default: 4; type: Boolean):顯示幾條

圖片圖片

  • <content-placeholders-img />

圖片圖片

可以在標簽上直接設置class和style

<content-placeholders class='xxx' :animated='true' :rounded='true' :centered='true'>
    <content-placeholders-heading class='xxx' style='xxxx' :img="true" />
</content-placeholders>
<content-placeholders style='xxxx' :animated='true' :rounded='true' :centered='true'>
    <content-placeholders-text class='xxx' style='xxxx' :lines="3" />
    <content-placeholders-img class='xxx' style='xxxx' />
</content-placeholders>

vue文件引入需要的骨架屏組件即可。

<template>
  <div>
    <Placeholders-Component v-if="isShow"></Placeholders-Component>
    <div v-else class="main">
      ·······
    </div>
  </div>
</template>
<script>
import PlaceholdersComponent from "./PlaceholdersComponent";//引入寫好的骨架屏組件
export default {
  components: {
    PlaceholdersComponent,
  },
  data() {
    return {
      hidden: true,
    };
  },
};
</script>

懶加載

  • Vue的路由懶加載(官方文檔[3]) ??在我們的項目構建加載時,JavaScript文件才是最影響加載時長的,此時我們把各個路由切分成塊,按需加載路由,這樣會節約相當多的時間。

使用方法也很簡單:

const Foo = () => import('./Foo.vue')
    const Bar = () => import('./Bar.vue')
    
    const router = new VueRouter({
        routes: [{ 
            path: '/foo',
            component: Foo 
        },{ 
            path: '/bar',
            component: Bar 
        }]
    })
  • 圖片懶加載 ??在我的《前端性能優化(二):圖片[4]》文中已經講了比較詳細的圖片懶加載在此就不多解釋了。

預渲染

我使用的是Vue.js官網介紹使用的prerender-spa-plugin。這個插件的配置很多,它的GitHub地址在這里[5]。

Vue.js的官網中給到該預渲染插件如下描述:

圖片圖片

預渲染也有一些需要注意的點:

  • 如果路由過多,成百上千(當然這應該是極少數情況)的時候,使用預渲染會非常緩慢。雖然說每次更新只用執行一次,但是需要的時間會非常長。
  • 接口請求過多的時候不建議使用預渲染,而是使用SSR;如果沒有SEO的需求,骨架屏是個更簡單方便的選擇,不需過多的配置更不需要后臺配合。
  • 預渲染不執行JavaScript,只試用于純靜態頁面,當然你也可以配置等接口請求返回拿到數據以后再預渲染,這種僅僅適用于少量接口請求。而SSR比預渲染的不同就是多了一步執行JavaScript。
安裝
npm i prerender-spa-plugin -D
webpack.prod.conf.js
const PrerenderSPAPlugin = require('prerender-spa-plugin')
const Renderer = PrerenderSPAPlugin.PuppeteerRenderer

const webpackConfig = merge(baseWebpackConfig, {
    plugins:[
        new PrerenderSPAPlugin({
            // 必需 - 要預渲染的 webpack 輸出應用程序的路徑。
            staticDir: path.join(__dirname, '../dist'),
            
            // 必需 - 要渲染的路由
            routes: ['/', '/about'],
          
            renderer: new Renderer({
                inject: {
                    foo: 'bar'
                },
                
                // 渲染時顯示瀏覽器窗口。用于調試。false意為打開,true是不打開
                headless: false,
                
                // 可選 - 等待渲染,直到在文檔上調度指定的事件。
                // 例如,使用 `document.dispatchEvent(new Event('event-home'))` 
                renderAfterDocumentEvent: 'event-home'
            })
        }),
    ]
})
main.js
new Vue({
    el: '#app',
    store,
    router,
    components: { App },
    template: '<App/>',
    mounted() {
        document.dispatchEvent(new Event('event-home'))
    }
})

npm run build以后我們會得到如下的文件,這個時候我們會發現,是多了一個about的文件夾。這是由于配置了new PrerenderSPAPlugin中的routes。

圖片圖片

圖片圖片

而且此時我們會發現,在打包好的index.html文件中,id為app的div標簽中有其他標簽內容。倘若我們不使用預渲染,打包出的文件里,這個標簽里是空的不會有任何標簽。

圖片圖片

圖片圖片

SSR(服務端渲染)

  • 分頁首屏加載
  • 各好的SEO
  • 搜索排名很重要的時候
  • 大型架構,動態頁面,且面對公眾用戶

具體使用可參考Vue的官方文檔

Service workers

Service workers可以很好的解決離線時候的首頁加載問題。但是鑒于文章長度限制,就在此處不細說了。

優化資源加載的順序

某乎有位大佬說的很詳細,鏈接在此[6]。

prefetch

主要加載較晚才會用到的資源,告知瀏覽器后,瀏覽器就會在閑時去加載對應的資源,很適合在懶加載時使用。

<link rel="prefetch" href="xxxxx.css">

對于使用prefetch獲取資源,其優先級默認為最低Lowest,可以認為當瀏覽器空閑的時候才會去獲取的資源。

圖片圖片

preload

主要用來加載當前頁面很重要的資源。

<link rel="preload" href="xxxxx.png" as="image">

瀏覽器通過as值能得知資源類型,還能根據as的值發送適當的Accept頭部信息。甚至可以通過as來標識他們請求資源的優先級(比如說使用as="style"屬性將獲得最高的優先級,即使資源不是樣式文件)

圖片圖片

兩者的異同

  • 如果關閉了瀏覽器,倘若請求還沒有結束,preload會立刻結束請求,但是prefetch會繼續請求。
  • 如果preload還未下載完就已經開始解析所需資源,此時并不會二次請求,而是等待此次請求完畢。
  • 倘若對同一個資源同時使用preload和prefetch則會導致二次加載。
  • preload是告訴瀏覽器頁面必定需要的資源,瀏覽器一定會加載這些資源,而prefetch是告訴瀏覽器頁面可能需要的資源,瀏覽器不一定會加載這些資源。

補充

關于Vue中的一些優化(并非首屏優化),我推薦黃軼老師的這篇文章《揭秘 Vue.js 九個性能優化技巧》[7]。

在我個人理解看來,性能優化的最終目的并不是完全追求時間上的長短,核心目的是給用戶更好的體驗,在提升了幀數的情況舍棄一點點加載或者渲染時間在整體體驗上要比完全追求數值上的長短有意義的多。也就是上面文章中這位朋友分享的觀點:

圖片圖片

責任編輯:武曉燕 來源: 量子前端
相關推薦

2020-12-09 09:30:57

前端開發技術

2013-08-21 11:15:54

iOS橫豎屏方案

2021-05-08 08:01:05

Session登錄瀏覽器

2022-02-10 08:57:45

分布式線程鎖

2023-05-06 15:32:04

2021-07-06 06:39:58

Kafka消息隊列系統

2009-07-13 10:36:18

2022-01-05 16:16:02

查詢編程工程師

2017-12-26 14:05:21

潤乾大屏可視化

2011-07-29 10:21:03

iPad 橫豎屏 切換

2011-10-25 11:40:54

打印機常見問題

2018-10-10 10:23:53

數據庫RedisNoSQL

2023-10-20 07:29:16

框架模型Prompt

2012-05-30 09:22:29

2023-11-06 08:00:38

接口高可用機制

2012-05-30 13:25:48

2022-03-04 00:08:00

數據數據安全安全

2024-12-20 13:00:00

C++編程C++17

2023-09-29 11:29:12

Spring異常處理類

2023-11-10 08:18:27

JavaGraalVM
點贊
收藏

51CTO技術棧公眾號

欧美性做爰猛烈叫床潮| 国产成人精品亚洲午夜麻豆| 亚洲欧美日韩国产精品| 亚洲老女人av| 影音先锋男人在线资源| 高清不卡一二三区| 国产精品高精视频免费| 国产波霸爆乳一区二区| 妖精一区二区三区精品视频| 欧美人妇做爰xxxⅹ性高电影| 久草免费福利在线| 爱久久·www| 成人午夜碰碰视频| 国产女同一区二区| aaa人片在线| 一区二区在线影院| 国产亚洲一区二区精品| jjzz黄色片| 亚洲欧洲二区| 一本色道久久综合亚洲aⅴ蜜桃| 中文字幕人成一区| 国产三级视频在线| 不卡视频在线看| 成人欧美在线观看| 青青草视频在线观看免费| 午夜欧美精品| 久久精品小视频| 成人免费无遮挡无码黄漫视频| 视频精品二区| 欧美精品丝袜久久久中文字幕| 91黄色小网站| 超级白嫩亚洲国产第一| 亚洲精品欧美专区| 亚洲精品9999| а√天堂中文在线资源bt在线| fc2成人免费人成在线观看播放| 91香蕉亚洲精品| 亚洲中文字幕在线一区| 久久精品一区二区国产| 久久久久久久久久久免费| 久久一级免费视频| 精品久久国产| 亚洲桃花岛网站| 色婷婷av777| 亚洲一级大片| 精品人在线二区三区| 97人人模人人爽人人澡| 欧美性生活一级| 欧美日韩精品福利| 亚洲综合婷婷久久| 精品久久福利| 欧美精品乱人伦久久久久久| 99re精彩视频| 色综合视频一区二区三区日韩| 欧美网站大全在线观看| 一区二区三区 欧美| 色尼玛亚洲综合影院| 都市激情亚洲色图| 成年人视频网站免费观看| 老色鬼在线视频| 欧美性猛交xxxx黑人| 大肉大捧一进一出好爽视频| 五月天国产在线| 日韩欧美国产中文字幕| 成人免费无码av| 日本一区二区电影| 欧美日韩国产综合一区二区| 欧美美女一级片| 国产午夜久久av| 精品久久国产老人久久综合| 国产一卡二卡三卡四卡| 欧美网色网址| 在线国产精品视频| 三级全黄做爰视频| 国户精品久久久久久久久久久不卡| 色综合久久88| 国产一区二区99| 免费在线欧美黄色| 国产日韩专区在线| 亚洲精选一区二区三区| av电影天堂一区二区在线| 欧美极品一区二区| 福利片在线看| 亚洲伦在线观看| 少妇av一区二区三区无码| 成人小电影网站| 91精品啪在线观看国产60岁| 亚洲美女精品视频| 九热爱视频精品视频| 日韩亚洲国产中文字幕| 欧美在线视频第一页| 合欧美一区二区三区| 日韩免费在线播放| 国产精品一区二区av白丝下载| 国产成人免费视频网站| 欧美一区二区三区四区五区六区| 日本高清中文字幕在线| 激情av一区二区| 男女爽爽爽视频| 亚洲天堂中文字幕在线观看| 亚洲黄色av女优在线观看| 美女福利视频网| 一级成人国产| 亚洲qvod图片区电影| 青青草超碰在线| 亚洲男人都懂的| 国产无套粉嫩白浆内谢的出处| 精品久久亚洲| 国产一区二区三区在线观看网站 | 国产欧美日韩在线观看视频| 久热在线中文字幕色999舞| 日本高清www免费视频| 久久福利资源站| 欧美日韩成人一区二区三区| 亚洲无线看天堂av| 欧美午夜精品一区| aaaaa级少妇高潮大片免费看| 一区二区三区毛片免费| 国产精品女视频| 五月婷婷六月丁香| 亚洲一线二线三线久久久| 牛夜精品久久久久久久| 久久香蕉精品香蕉| 欧美成人精品不卡视频在线观看| 欧美一区二区三区网站| 成人av午夜电影| 狠狠干视频网站| 日韩一区二区三区四区五区| 亚洲人成网站免费播放| 日韩av无码中文字幕| 国产精品66部| 欧美 国产 精品| 日本午夜精品久久久久| 在线视频日本亚洲性| 久久精品国产成人av| 成人激情午夜影院| 欧美一级中文字幕| 久久伊人精品| 欧美精品在线免费播放| 国产又粗又大又爽视频| 中国av一区二区三区| 波多野结衣作品集| 中文精品一区二区| 日本成人免费在线| 欧美色视频免费| 色婷婷久久一区二区三区麻豆| 国产精品99久久久精品无码| 香蕉av一区二区| 国产在线视频一区| 男女啪啪在线观看| 欧美高清hd18日本| 国产一区二区精彩视频| 久久国产视频网| 香蕉视频在线网址| 欧美电影院免费观看| 欧美精品做受xxx性少妇| 国产探花精品一区二区| 一区二区三区日本| 亚洲少妇中文字幕| 中日韩视频在线观看| 精品一区二区三区自拍图片区| 欧美a级在线观看| 亚洲精品电影久久久| 日本中文字幕第一页| 久久香蕉国产线看观看99| 波多野结衣作品集| 五月开心六月丁香综合色啪| 999在线免费观看视频| 福利成人导航| 亚洲欧美精品伊人久久| 亚洲一区二区三区网站| 亚洲欧洲综合另类在线| 美女扒开腿免费视频| 国产精品视区| 亚洲精品一区二区三区四区五区| 国产精品毛片aⅴ一区二区三区| 色在人av网站天堂精品| 亚洲欧美日韩精品永久在线| 欧美中文一区二区三区| 2025国产精品自拍| av一区二区三区黑人| 无码精品国产一区二区三区免费| 日韩不卡一区| 岛国视频一区免费观看| 少妇淫片在线影院| 日韩中文字幕国产| 蜜臀久久99精品久久久| 在线区一区二视频| 破处女黄色一级片| 99在线精品观看| 日本xxxx黄色| 伊人久久综合| 一区一区视频| 日韩成人动漫在线观看| 国产精品中文在线| 6699嫩草久久久精品影院| 亚洲石原莉奈一区二区在线观看| 国产精品无码久久av| 欧美日韩国产在线播放| 成人无码精品1区2区3区免费看| 成人av电影在线观看| 99sesese| 久久激情网站| 大西瓜av在线| 99久久视频| 欧美日韩电影一区二区| 玖玖精品一区| 国产精品亚洲аv天堂网| av免费不卡| 操日韩av在线电影| 成av人电影在线观看| 亚洲第一区中文字幕| 国产又粗又黄又爽| 欧美在线观看视频在线| 日韩高清精品免费观看| 亚洲天堂2016| 国产三级短视频| 99国产精品视频免费观看| 在线视频一二区| 免费高清在线一区| 国产熟女高潮视频| 亚洲第一黄色| 一本色道久久88亚洲精品综合 | 国产亚洲欧洲在线| 性感美女福利视频| 亚洲福利视频二区| 国产成人麻豆精品午夜在线| 欧美美女黄视频| 中文字幕 自拍偷拍| 色先锋aa成人| 极品国产91在线网站| 婷婷久久综合九色综合伊人色| 三级影片在线看| 中文字幕不卡三区| 亚洲黄色小说视频| 国产偷v国产偷v亚洲高清| 在线免费观看a级片| 岛国一区二区在线观看| 韩国三级与黑人| 国产精品一区二区你懂的| 亚洲午夜精品一区| 激情综合五月天| 想看黄色一级片| 国产乱淫av一区二区三区| 亚洲天堂国产视频| 国产在线精品一区二区夜色| 青青草原国产在线视频| 免费人成精品欧美精品| 国产又大又黄又粗又爽| 蜜桃视频在线观看一区二区| 我看黄色一级片| 久久99这里只有精品| 中文字幕在线视频一区二区三区| 国产一区在线视频| 巨乳女教师的诱惑| av电影一区二区| 国产美女精品久久| 久久精品夜夜夜夜久久| 特级西西www444人体聚色 | 国产美女福利视频| 亚洲欧美日韩国产手机在线| 深夜福利影院在线观看| 亚洲国产日韩精品| 三级黄色在线视频| 在线视频一区二区免费| 亚洲无码精品国产| 日韩午夜在线观看视频| 欧美一级视频免费| 亚洲精品自拍视频| 91精彩在线视频| 久久精品99久久久香蕉| 午夜小视频在线观看| 国内外成人免费激情在线视频网站| 美女搞黄视频在线观看| 国产精品久久久久免费a∨| 91精品亚洲一区在线观看| 国产aⅴ精品一区二区三区黄| 欧美一级色片| 亚洲人一区二区| 欧美视频网站| 黄在线观看网站| 极品美女销魂一区二区三区免费| 亚洲免费观看在线| 国产网红主播福利一区二区| 国产免费无码一区二区视频| 欧美日韩国产精品一区二区不卡中文 | 最好看的中文字幕| 久久久亚洲精品一区二区三区| 欧美a级片免费看| 亚洲成人av一区二区| 最新中文字幕免费| 精品成人在线观看| 91在线视频| 久久久免费观看视频| av激情成人网| 国产精品一区在线观看| 精品不卡一区| 国产精品视频二| 首页国产欧美久久| 91亚洲一线产区二线产区| 久久精品欧美日韩精品| 麻豆亚洲av熟女国产一区二| 在线亚洲人成电影网站色www| 亚洲精品.www| 社区色欧美激情 | 午夜裸体女人视频网站在线观看| 成人午夜激情免费视频| 国产欧美日韩| 欧美一级片免费播放| 精品亚洲成a人| 97超碰在线资源| 亚洲444eee在线观看| 国产裸体永久免费无遮挡| 亚洲奶大毛多的老太婆| 国产一线二线在线观看 | 欧美国产日韩在线播放| 成人不卡免费av| 我家有个日本女人| 91.com视频| caoporn国产精品免费视频| 2020久久国产精品| 国产精品x8x8一区二区| ijzzijzzij亚洲大全| 奇米影视在线99精品| 国产人妻一区二区| 欧美性猛交xxxxx免费看| 天堂8在线视频| 久久久亚洲网站| 亚洲国产视频二区| av电影一区二区三区| 蜜桃在线一区二区三区| 亚洲黄色网址大全| 欧美系列亚洲系列| 国产精品久久久久一区二区国产 | 欧美一区二区三区综合| 六月婷婷色综合| 天天干天天操天天拍| 欧美主播一区二区三区美女| 福利成人在线观看| 国产成人av网址| 欧美精选视频在线观看| 日韩av资源在线| 国产亚洲精品资源在线26u| 69成人免费视频| 亚洲女在线观看| 亚洲高清黄色| 水蜜桃亚洲精品| 免费精品99久久国产综合精品| 国产视频不卡在线| 精品1区2区3区| 毛片在线看网站| 成人午夜在线视频一区| 欧美一区影院| 丰满人妻一区二区三区大胸| 亚洲成人1区2区| 全色精品综合影院| 国产成人精品优优av| 欧美综合在线视频观看| 中文字幕av专区| 国产精品久久久久aaaa| 国产色视频在线| 国内精品久久久久久久久| 欧美三级电影在线| 黄色一级免费大片| 一区在线观看视频| 亚洲国产999| 1769国产精品| 日韩片欧美片| 免费在线观看日韩av| 狠狠色香婷婷久久亚洲精品| 成年人在线看| αv一区二区三区| 午夜在线一区| 国产一二三四视频| 欧美白人最猛性xxxxx69交| 亚洲人体影院| 在线观看视频黄色| 成人18视频在线播放| 欧美超碰在线观看| 麻豆乱码国产一区二区三区| 蜜臀av一区| 久久国产精品国产精品| 亚洲一区二区三区影院| 看电影就来5566av视频在线播放| 国产欧美精品一区二区三区-老狼| 欧美成人精品| 亚洲性猛交xxxx乱大交| 欧美一级夜夜爽| 丝袜美腿一区| 国产内射老熟女aaaa| 久久精品一区二区| 亚洲成人黄色片| 国产精品久久激情| 黄色国产精品| 999久久久国产| 亚洲精品v天堂中文字幕 | 欧美一区二区三区视频免费播放| 美女高潮视频在线看| 午夜探花在线观看| 久久久久久久久一|