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

使用JavaScript和Canvas開發(fā)游戲之認識Canvas

開發(fā) 前端
Canvas元素以及JavaScript引擎中新增的一些特性,讓Web開發(fā)人員不必借助第三方插件,即可設計開發(fā)出精細且具有交互性的2D網(wǎng)頁。這篇文章就向大家介紹一下Canvas元素,以及它的一些可能的用途。

1、認識一下Canvas

http://www.brighthub.com/internet/web-development/articles/38364.aspx

Canvas元素以及JavaScript引擎中新增的一些特性,讓Web開發(fā)人員不必借助第三方插件,即可設計開發(fā)出精細且具有交互性的2D網(wǎng)頁。這篇文章就向大家介紹一下Canvas元素,以及它的一些可能的用途。

JavaScript與Canvas元素

HTML是為創(chuàng)建靜態(tài)頁面而生的。HTML所能實現(xiàn)的動態(tài)效果,也僅限于顯示GIF動畫和閃爍的文本。JavaScript改變了這一切,通過它能夠動態(tài)修改網(wǎng)頁。今天,很多Web服務都利用AJAX來創(chuàng)建網(wǎng)頁,為用戶提供更加流暢的體驗,也超越了標準HTML頁面中常見的“點擊-重新加載-點擊”式的交互模式。

然而,JavaScript的某些功能會受到其宿主瀏覽器的制約。盡管可以在網(wǎng)頁中創(chuàng)建和修改任何元素,但JavaScript不能(輕易地)讓瀏覽器顯示一種新對象。通過JavaScript修改文本、插入圖像或者縮放表格都很容易,因為這些對象本來就是HTML所支持的。如果你想再玩得刺激一點,比如寫一個網(wǎng)頁游戲,怎么辦?那恐怕就得苦心積慮地改變標準HTML元素的用途,克服種種不測才能達到目的。要么,你就得求助于Flash或Silverlight這樣的插件。

Canvas元素登場了。這個新HTML元素為JavaScript開發(fā)者提供了一種無需插件即可在網(wǎng)頁中直接繪圖的機制。Canvas元素最早是由蘋果公司在其WebKit框架中引入的,Safari瀏覽器和Dashboard微件都在使用。Canvas元素現(xiàn)在也被建議加入了HTML5規(guī)范,得到了***的Chrome、Firefox、Opera以及Konqueror等瀏覽器的支持。Internet Explorer(至少在IE8之前)還不支持Canvas,但ExplorerCanvas項目倒是為IE提供了與Canvas元素類似的功能。

Canvas元素對做過2D圖形編程的人是小菜一碟。可以在這個元素上畫線、畫各種形狀、畫漸變,甚至可以利用與其他2D API中類似的函數(shù)來修改其中的每一個像素。得益于Chrome的V8、Firefox的SpiderMonkey以及Safari的Nitro等***JavaScript引擎的性能,創(chuàng)建精細且具有交互性的Web應用已經(jīng)完全沒有問題。

我們這一系列文章將教會大家使用JavaScript和Canvas元素創(chuàng)建一個簡單的平臺游戲。將要涉及的內容包括動畫、加載資源、分層渲染、滾動和交互。通過一步一步地展示示例代碼和實際效果,你可以很快學會如何駕馭強大的Canvas元素。

2、在Canvas上繪圖

http://www.brighthub.com/internet/web-development/articles/38744.aspx

下面,我們就通過一個循序漸進的示例及實時演示,來介紹如何使用JavaScript在Canvas元素上繪圖及實現(xiàn)動畫。

準備工作

知道了什么是Canvas元素之后,該學習在屏幕上繪圖了。首先,需要一個HTML頁面來放置和顯示Canvas元素。

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">  
  2. <html lang="en">  
  3.    <head>  
  4.       <title>JavaScript Platformer 1</title>  
  5.       <script type="text/javascript" src="jsplatformer1.js"></script>  
  6.       <style type="text/css">  
  7.          body { font-family: Arial,Helvetica,sans-serif;}  
  8.       </style>  
  9.    </head>  
  10.   <body>  
  11.      <p>  
  12.         <a href="http://www.brighthub.com/internet/web-development/articles/38364.aspx">  
  13.            Game Development with Javascript and the canvas element  
  14.         </a>  
  15.      </p>  
  16.      <canvas id="canvas" width="600" height="400">  
  17.         <p>Your browser does not support the canvas element.</p>  
  18.      </canvas>  
  19.   </body>  
  20. /html> 

這些HTML代碼很直觀。其中有兩個重要的元素。

  1. <script type="text/javascript" src="jsplatformer1.js"></script> 

這里包含的是將會修改Canvas元素的JavaScript代碼,對應的Canvas元素的標記如下:

  1. <canvas id="canvas" width="600" height="400">  
  2.     <p>Your browser does not support the canvas element.</p>  
  3. </canvas>  

以上代碼創(chuàng)建了一個Canvas元素。不支持Canvas的瀏覽器,比如Internet Explorer(IE8之前的版本),會忽略這個元素,而只顯示其子元素。在這個簡單的例子中,這個子元素就是一個段落,其中的文本告訴用戶他們的瀏覽器不支持Canvas元素。而對于那些支持Canvas元素的瀏覽器,如Chrome、Opera和Firefox,則會忽略Canvas元素的子元素。

這個Canvas元素的ID屬性很重要,因為后面的JavaScript將通過它來取得對該元素的引用。而width和height屬性指定了畫布的寬度和高度,這兩個屬性跟table或img等其他HTML元素中的同名屬性作用一樣。

以下是 jsplatformer1.js的代碼:

  1.  
  2. //每秒鐘target幀  
  3. const FPS = 30;  
  4. var x = 0;  
  5. var y = 0;  
  6. var xDirection = 1;  
  7. var yDirection = 1;  
  8. var image = new Image();  
  9. image.src = "jsplatformer1-smiley.jpg";  
  10. var canvas = null;  
  11. var context2D = null;  
  12.  
  13. window.onload = init;  
  14. function init(){  
  15.     canvas = document.getElementById('canvas');  
  16.     context2D = canvas.getContext('2d');  
  17.     setInterval(draw, 1000/FPS);  
  18. }  
  19. function draw(){  
  20.     context2D.clearRect(0, 0, canvas.width, canvas.height);  
  21.     context2D.drawImage(image, x, y);  
  22.     x += 1* xDirection;  
  23.     y += 1* yDirection;  
  24.  
  25.     if (x >= 450) {  
  26.         x = 450;  
  27.         xDirection = -1;  
  28.     }else if(x <= 0){  
  29.         x = 0;  
  30.         xDirection = 1;  
  31.     }  
  32.     if (y >= 250) {  
  33.         y = 250;  
  34.         yDirection = -1;  
  35.     }else if(y <= 0){  
  36.         y = 0;  
  37.         yDirection = 1;  
  38.     }  
  39. }  

如果只是一個Canvas元素,也沒有什么用。JavaScript必須要在這塊畫布上面畫點什么,相應的代碼保存在 jsplatformer1.js中。簡單來說,JavaScript在這里先加載了一幅圖像,然后將其畫在畫布上面,***讓它在畫布上移動。

首先,定義一些全局變量。

  1. const FPS = 30;  

FPS定義的是畫布重繪的頻率。

  1. var x = 0;  
  2. var y = 0;  
  3. var xDirection = 1;  
  4. var yDirection = 1; 

變量x、y、xDirection和yDirection用于定義圖像(相對于畫布左上角)的位置,以及它在任意一時刻移動的方向。

  1. var image = new Image();  
  2. image.src = "http://javascript-tutorials.googlecode.com/files/jsplatformer1-smiley.jpg"

要把圖像畫到畫布上,必須先加載一幅圖像。為此,我們創(chuàng)建一個Image對象,將其src屬性設置為一幅圖像文件的URL(建議把圖片下載到本地。——譯者注)。

  1. var canvas = null;  
  2. var context2D = null

我們還需要取得對Canvas元素以及繪圖上下文(稍后再詳細介紹繪圖上下文)的引用。稍后我們會把正確的值賦給這兩個變量,現(xiàn)在先把它們設置為null。

  1. window.onload = init; 

***,當頁面加載完成后,我們必須知道立即運行繪制畫布的代碼;因此,在window對象的onload事件發(fā)生時,立即調用init函數(shù)。

init函數(shù)

  1. function init(){  
  2.     canvas = document.getElementById('canvas');  
  3.     context2D = canvas.getContext('2d');  
  4.     setInterval(draw, 1000/FPS);  
  5. }  

頁面加載完畢后就會調用上面這個init函數(shù)。在這個函數(shù)中,我們先通過在HTML文件中指定的ID屬性取得畫布元素(毫無疑問,除了把它叫做畫布,還能叫個啥?),然后再取得這個畫布的2D繪圖上下文對象。

上下文對象用于定義如何在畫布上繪圖。顧名思義,2D上下文嘛,支持在畫布上繪制2D圖形、圖像和文本。支持畫布元素的瀏覽器都支持2D上下文,除了2D上下文,還有其他試驗性的上下文對象。Opera有一個專門為游戲設計的2D上下文,而Mozilla則有一個能夠顯示3D場景的上下文。可惜呀,目前這些上下文對象只有特定的瀏覽器才支持。如果你想用畫布來創(chuàng)建Web應用,***還是只使用常見的2D上下文。

因為我們在這里是想繪制一幅能移動的圖像,所以必須建立渲染循環(huán)(render loop)。所謂渲染循環(huán),實際上就是一個被重復調用的函數(shù),渲染循環(huán)的每一次迭代,(在這個例子中)都可以讓圖像在屏幕上產(chǎn)生一點位移,如此循環(huán)往復就能給人圖像在移動的感覺。為此,我們調用了setInterval函數(shù),它的***個參數(shù)是應該被重復調用的函數(shù),這里的函數(shù)名是draw。setInterval函數(shù)的第二個參數(shù)指定調用函數(shù)的頻率。這個參數(shù)值的單位是毫秒,而用1000除以早先定義的FPS得到的就是每次調用之間相隔的毫秒數(shù)。

這里需要注意一下,雖然我們指定每秒鐘調用30次draw函數(shù),但實際上不會調用30次。多長時間調用一次draw函數(shù),取決于底層JavaScript引擎的速度和要執(zhí)行的draw函數(shù)代碼的復雜程度。如果系統(tǒng)很慢的話,很可能每秒鐘只能調用一次draw函數(shù)。所以說,這里指定給setInterval的頻率只是一種最理想的情況。

draw函數(shù)

在畫布上繪圖的操作實際上都是由draw函數(shù)來完成的。下面我們就一步一步地說明其中的繪圖操作。

  1. context2D.clearRect(0, 0, canvas.width, canvas.height); 

所有繪圖操作都是在上下文對象上發(fā)生的,并不是在畫布元素上發(fā)生的。這里首先清空上下文,以便為繪制每一幀畫面準備一個干凈的版面。

  1. context2D.drawImage(image, x, y); 

緊接著,就把圖像繪制到上下文對象中,參數(shù)x和y指定了繪制圖像的左上角坐標。

  1. x += 1 * xDirection;  
  2. y += 1 * yDirection; 

為了讓圖像在畫布上移動,需要根據(jù)xDirection和yDirection是等于1(向右或向下)還是等于-1(向左或向上),來遞增或遞減x與y的值。

  1. if (x >= 450){  
  2.     x = 450;  
  3.     xDirection = -1;  
  4. else if (x <= 0) {  
  5.     x = 0;  
  6.     xDirection = 1;  
  7. }  
  8. if (y >= 250) {  
  9.     y = 250;  
  10.     yDirection = -1;  
  11. else if (y <= 0) {  
  12.     y = 0;  
  13.     yDirection = 1;  

如果圖像移動到了畫布外面,則反轉圖像的移動方向。我們知道圖像的大小是150×150像素,而畫布的大小的是600×400像素,因而就有了450(600 – 150)和250(400 – 150)這兩個值。

***的效果就是笑臉圖像會在畫布的范圍內反彈往復。此時此刻,有讀者可能會想:同樣的效果如果通過修改DIV元素的位置來實現(xiàn)可能更容易一些。這一點我不否認。但這個例子只演示了畫布元素所能實現(xiàn)的簡單效果。下一篇文章我們就會介紹使用畫布元素能夠實現(xiàn)的高級效果,同樣的效果若采用其他方式,恐怕就要困難多了。

原文作者:Matthew Casperson 原文鏈接: Game Development with JavaScript and the Canvas element

譯文作者:李松峰 譯文鏈接:http://www.cn-cuckoo.com/2011/08/10/game-development-with-javascript-and-the-canvas-element-2554.html

【編輯推薦】

  1. JavaScript入門之語言基礎
  2. 云端JavaScript漫游指南(視頻)
  3. 使用node.js進行服務器端JavaScript編程
  4. JavaScript實現(xiàn)頁面滾動圖片加載
  5. JavaScript入門之基本函數(shù)
責任編輯:陳貽新 來源: 李松峰的博客
相關推薦

2011-08-12 08:56:31

JavaScript

2012-01-04 13:55:23

Canvas

2012-05-09 09:41:58

HTML5

2013-05-20 17:13:17

Android游戲開發(fā)CanvasPaint

2022-03-09 09:00:41

SwiftUI視圖生成器Swift

2022-05-27 11:22:40

Canvas超級瑪麗游戲

2010-09-30 13:11:59

J2MECanvas

2022-02-23 15:17:04

鴻蒙OpenHarmonJacascript

2012-05-09 12:18:14

HTML5Canvas

2012-06-04 10:16:18

HTML5

2009-12-29 10:06:09

WPF Canvas

2022-06-29 14:06:54

canvas鴻蒙

2021-09-01 22:59:31

Canvas標簽語法

2023-02-28 11:43:35

2012-02-24 15:28:36

ibmdw

2012-09-24 13:49:13

HTML5CanvasJS

2022-12-12 09:01:13

2012-06-12 09:53:14

HTML5

2021-02-21 22:53:01

CanvasHTML5JavaScript

2021-09-01 22:58:22

Canvas標簽
點贊
收藏

51CTO技術棧公眾號

亚洲桃色在线一区| 麻豆精品一区二区三区| 日韩av网站电影| 99精品视频在线看| 亚洲精品传媒| 成人高清免费观看| 国产高清在线不卡| 丰满少妇被猛烈进入一区二区| 久久电影在线| 欧美片在线播放| 蜜臀精品一区二区| aaa日本高清在线播放免费观看| 国产麻豆精品theporn| 97成人精品区在线播放| 免费一级suv好看的国产网站| 91精品国产自产在线丝袜啪| 在线视频国产一区| 久久人人爽人人爽人人av| 国产特黄在线| 成人a免费在线看| 国产精品视频免费在线| 日本少妇在线观看| 伊人情人综合网| 亚洲午夜未删减在线观看 | 国产在线一区二区三区四区| 最近中文字幕在线免费观看| 亚洲三级视频| 久久av在线播放| 国产黄色大片免费看| 国产一区二区三区亚洲| 欧美一区二区三区喷汁尤物| 日本成人中文字幕在线| 男人的天堂免费在线视频| 一区二区三区在线视频播放 | 亚洲一区二区日韩| 在线丨暗呦小u女国产精品| 成人免费无码大片a毛片| 白嫩亚洲一区二区三区| 欧美色图天堂网| 日韩在线第三页| 国产精品蜜芽在线观看| 亚洲国产精品久久人人爱蜜臀| 26uuu成人| 色开心亚洲综合| 奇米色一区二区| av在线最新| 97人人模人人爽人人澡| 人妖精品videosex性欧美| 国产精品情趣视频| 久久夜色电影| 午夜精品久久久久久久爽 | 在线观看日本中文字幕| 经典三级久久| 欧美日韩免费一区二区三区视频| 日本在线观看a| 亚洲妇女成熟| 日韩欧美国产一区二区| 尤物av无码色av无码| 国产一二三在线| 欧美色另类天堂2015| 无码aⅴ精品一区二区三区浪潮 | 你懂的在线观看网站| 精品福利一区| 日韩电影网在线| theav精尽人亡av| 亚洲毛片免费看| 亚洲欧洲在线看| 国产一二三四五区| 区一区二视频| 久久综合伊人77777蜜臀| 免费在线观看一级片| 欧美一区激情| 久久男人资源视频| 天堂а√在线中文在线新版| 天堂蜜桃91精品| 国产精品欧美日韩久久| 一区二区美女视频| 国产成人亚洲精品青草天美| caoporn国产精品免费公开| 色噜噜一区二区三区| 91蝌蚪porny九色| 婷婷久久五月天| av网站在线免费| 午夜精品成人在线| 日本成人黄色网| japansex久久高清精品| 精品少妇一区二区三区免费观看| 人妻体内射精一区二区三区| 国产精品欧美在线观看| 成人97在线观看视频| 日韩成年人视频| 日韩成人av影视| 亚洲综合在线播放| 牛牛影视精品影视| 亚洲蜜臀av乱码久久精品蜜桃| 精品人妻少妇一区二区| 日本欧美不卡| 欧美变态凌虐bdsm| 国产精品天天干| 黄色成人在线网址| 国产精选久久久久久| 精品国产无码AV| 久久久久国产免费免费| 黄色一级大片免费| 忘忧草在线www成人影院| 日韩免费电影网站| 日韩福利在线视频| 亚洲第一毛片| 成人激情视频在线播放| 青青草在线播放| 一区二区三区在线观看网站| 一级黄色香蕉视频| 欧美日韩一本| 欧美美最猛性xxxxxx| 糖心vlog精品一区二区| 北岛玲一区二区三区四区| 日韩视频在线免费播放| abab456成人免费网址| 亚洲高清不卡av| 欧美一级片在线视频| 久久成人国产| 精品一区日韩成人| 毛片大全在线观看| 在线电影一区二区三区| 欧美 日韩 成人| 亚洲国产精品一区制服丝袜| 91最新国产视频| 色开心亚洲综合| 欧美无乱码久久久免费午夜一区| 成人免费无码大片a毛片| 欧美午夜国产| 91久久国产自产拍夜夜嗨| 亚洲精品传媒| 欧美日韩大陆在线| 欧美日韩国产黄色| 肉肉av福利一精品导航| 鲁丝一区鲁丝二区鲁丝三区| 蜜桃视频在线网站| 精品国产人成亚洲区| 男女性高潮免费网站| 久草这里只有精品视频| 一区二区三区四区| 亚洲男人在线| 久久国产精品99国产精| 中文字幕人妻一区二区三区视频| 国产欧美一区二区精品性| 成年人视频网站免费观看| 久久久免费毛片| 97国产在线观看| 天堂成人在线视频| 精品久久久久久亚洲精品| 亚洲の无码国产の无码步美| 91久久综合| 精品国产乱码久久久久久蜜柚 | 成人国产精品久久久| av电影在线观看| 欧美日韩一卡二卡三卡| 亚洲欧美卡通动漫| 国产剧情一区二区三区| www.18av.com| 久久精品论坛| 日本在线观看天堂男亚洲| 国产在线中文字幕| 911精品产国品一二三产区| 在线免费看av网站| 国产成人在线视频免费播放| 日韩在线观看a| 丝袜美腿综合| 国产精品一区二区电影| 性爱视频在线播放| 亚洲成色www8888| 波多野结衣高清视频| 成人欧美一区二区三区黑人麻豆| 免费观看黄网站| 中国女人久久久| 亚洲二区自拍| 亚洲专区**| 日本a级片电影一区二区| 日韩子在线观看| 欧美成人一区二区| 综合网在线观看| 亚洲欧洲av在线| 欧美在线一级片| 日本中文在线一区| 黄色污污在线观看| 美腿丝袜亚洲图片| 国产欧美一区二区白浆黑人| 俄罗斯一级**毛片在线播放| 亚洲色图激情小说| www黄色在线观看| 色8久久精品久久久久久蜜| 中文字幕美女视频| 99精品一区二区| 免费成人黄色大片| 一本色道久久综合亚洲精品不| 亚洲一区二区精品在线| 国偷自产视频一区二区久| 国产精品日日摸夜夜添夜夜av| 欧美寡妇性猛交xxx免费| 在线日韩精品视频| 色欲av永久无码精品无码蜜桃| 欧美色网站导航| 啦啦啦免费高清视频在线观看| 国产精品乱码久久久久久 | 中日韩免费视频中文字幕| 日本一级大毛片a一| 免费日本视频一区| 国产中文字幕视频在线观看| 综合久久综合| 一区二区精品视频| 最新国产一区| 国产不卡一区二区三区在线观看| 国产成人77亚洲精品www| 久久久女人电视剧免费播放下载| 黄网址在线观看| 亚洲欧美一区二区精品久久久| 亚洲欧美强伦一区二区| 91精品欧美久久久久久动漫| 中文字幕永久在线| 五月天婷婷综合| 久久久久人妻一区精品色欧美| 国产精品入口麻豆九色| 国产手机在线观看| av成人免费在线| www.美色吧.com| 狠狠色狠狠色综合系列| 国产小视频精品| 日日欢夜夜爽一区| 日韩少妇内射免费播放18禁裸乳| 欧美三级在线| 欧美xxxx吸乳| 国产精品久久久久久久| 日韩国产在线一区| 国产精品免费不| 欧美激情www| 美女久久99 | 99久久99久久精品国产片桃花| 欧美日韩大片一区二区三区| 日韩高清电影免费| 久久国产精品精品国产色婷婷| 国产+成+人+亚洲欧洲在线| 91精品综合久久| 日本成人手机在线| 成人欧美一区二区三区视频| av不卡一区二区| 高清不卡日本v二区在线| 免费欧美网站| 97操在线视频| 国产精品中文字幕制服诱惑| 国产精品乱码一区二区三区| 精品精品国产三级a∨在线| 粉嫩高清一区二区三区精品视频 | 久久精品国产一区二区三区免费看| 亚洲精品一二三四五区| 日产国产高清一区二区三区| 国产喷水theporn| 国精产品一区一区三区mba桃花| 91看片破解版| 成人午夜电影久久影院| 日本一区二区在线免费观看| 91亚洲午夜精品久久久久久| 黑人巨大精品欧美| 国产偷国产偷精品高清尤物 | 爱情岛论坛亚洲自拍| 国产成人综合自拍| 三级视频网站在线观看| 97aⅴ精品视频一二三区| 精品国产无码在线观看| 欧美激情综合网| 色欲一区二区三区精品a片| 夜色激情一区二区| 久久精品国产成人av| 欧美日韩一区二区三区视频 | 精品视频在线一区二区在线| 国产欧美一区二区三区视频| 国产成人免费av一区二区午夜| 国产成人女人毛片视频在线| 欧美尿孔扩张虐视频| 欧洲成人一区二区| 婷婷精品进入| 国产96在线 | 亚洲| 全国精品久久少妇| 色欲无码人妻久久精品| 2021国产精品久久精品| 农村老熟妇乱子伦视频| 亚洲香肠在线观看| 精品国产青草久久久久96| 精品日韩欧美在线| 成人精品一区二区三区免费| 久久99久国产精品黄毛片入口| 成人av观看| 999日本视频| 国产精品一区二区99| 影音先锋成人资源网站| 免费亚洲婷婷| 亚洲午夜精品在线观看| 国产日韩欧美电影| 久久网一区二区| 欧美欧美午夜aⅴ在线观看| 色一情一乱一区二区三区| 日韩中文字幕在线观看| 樱花草涩涩www在线播放| 91久久久国产精品| 国产欧美日韩在线观看视频| 国产欧美精品aaaaaa片| 久久成人免费电影| 亚洲欧美视频在线播放| 亚洲黄色免费网站| 中文精品久久久久人妻不卡| 亚洲第一视频网| v片在线观看| 国产精品主播视频| 奇米狠狠一区二区三区| 分分操这里只有精品| 国产乱码精品一区二区三区忘忧草 | 日韩三级av| 日韩欧美精品免费| 国产一区二区导航在线播放| 污污视频网站在线免费观看| 色悠悠亚洲一区二区| 狠狠综合久久av一区二区| 日韩中文第一页| 新片速递亚洲合集欧美合集| 国模一区二区三区私拍视频| 欧美色123| 中文字幕第10页| 亚洲欧洲av在线| 亚洲资源在线播放| 亚洲性无码av在线| 影视一区二区三区| 美女黄毛**国产精品啪啪| 国产亚洲午夜| 精品久久久久久中文字幕人妻最新| 亚洲国产日韩一级| 亚洲乱熟女一区二区| 久久99热这里只有精品国产| 国产日韩中文在线中文字幕| 伊人久久大香线蕉精品| 麻豆精品视频在线| 香蕉久久久久久久| 欧美日韩午夜在线| 夜级特黄日本大片_在线| 国产欧美一区二区三区久久人妖 | 女人帮男人橹视频播放| 国产精品羞羞答答xxdd| 国产大片免费看| 精品久久久网站| 天堂av在线网| 奇米影视首页 狠狠色丁香婷婷久久综合 | 国产乱码久久久久| 久久深夜福利免费观看| japansex久久高清精品| 国产在线视频综合| 成人免费视频网站在线观看| 精品成人久久久| 日韩精品www| 巨胸喷奶水www久久久免费动漫| 天堂精品一区二区三区| 久久精品国产秦先生| 农村妇女精品一区二区| 精品欧美一区二区三区精品久久| sis001亚洲原创区| 蜜桃成人在线| 蜜臀久久99精品久久久久宅男 | 精品成人一区二区三区免费视频| 国产精品av在线播放| 欧美韩日一区| 久久久久无码精品| 天天色天天爱天天射综合| 国产福利电影在线| 成人综合网网址| 亚洲大片在线| 成人性生交大片免费看无遮挡aⅴ| 7777精品伊人久久久大香线蕉完整版 | 欧美成人精品欧美一级乱| 国产精品伦一区| 精品欧美一区二区精品少妇| 91禁外国网站| 欧美独立站高清久久| 日本不卡视频一区| 欧美自拍丝袜亚洲| 超碰在线caoporn| 久久久久九九九| 久久se这里有精品| 五月天综合在线| 日日骚久久av| 精品无人区一区二区| 在线免费视频一区| 亚洲欧美日韩中文字幕一区二区三区| 神马影院一区二区| eeuss影院www在线播放| 欧美久久久久免费| 羞羞视频在线观看不卡| 久久久久久久久久久久久久久久av | 日韩精品一级| 国产偷人视频免费| 亚洲精品精品亚洲| av免费观看一区二区| 国产九色精品| 国产自产视频一区二区三区|