成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁(yè) > 知識(shí)庫(kù) > 如何用canvas實(shí)現(xiàn)在線簽名的示例代碼

如何用canvas實(shí)現(xiàn)在線簽名的示例代碼

熱門標(biāo)簽:云南大理400電話申請(qǐng)官方 成都智能外呼系統(tǒng)平臺(tái) 電銷機(jī)器人電話用什么卡 南寧點(diǎn)撥外呼系統(tǒng)哪家公司做的好 江蘇智能電銷機(jī)器人哪家好 當(dāng)涂高德地圖標(biāo)注 鎮(zhèn)江智能外呼系統(tǒng)有效果嗎 黃島區(qū)地圖標(biāo)注 四川點(diǎn)撥外呼系統(tǒng)

隨著計(jì)算機(jī)和網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,在線簽名技術(shù)越來(lái)越多的被應(yīng)用在無(wú)紙化辦公中,這種直觀便利的操作不僅可以大幅提升辦公效率,而且使用數(shù)字化存儲(chǔ)方式,避開了傳統(tǒng)的紙質(zhì)簽字存儲(chǔ)查閱困難等問(wèn)題。在我們?cè)谌粘I钪校呀?jīng)有很多場(chǎng)景使用在線簽名技術(shù),例如:pos機(jī)刷卡簽字、快遞簽收簽字、銀行或機(jī)關(guān)單位業(yè)務(wù)辦理簽字等。最近在做公司的業(yè)務(wù)辦理需求,里面也涉及到在線簽名,我們采用的 Canvas 技術(shù)實(shí)現(xiàn),接下來(lái),讓我們來(lái)聊聊如何使用 Canvas 實(shí)現(xiàn)在線簽名吧!

什么是 Canvas?

Canvas 是 HTML5 新增的元素,用于在網(wǎng)頁(yè)上繪制圖形,它由 Apple 在 Safari 1.3 Web 瀏覽器中引入,之所以對(duì) HTML 擴(kuò)展的原因在于, HTML 在 Safari 中的繪圖能力能為 Mac OS X 桌面的 Dashboard 組件所使用,并且 Apple 也希望有一種方式可以在 Dashboard 中支持腳本化的圖形。Firefox 1.5 和 Opera 9 這兩個(gè)瀏覽器也緊隨 Safari 的引領(lǐng),開始支持 Canvas 。

現(xiàn)在,Canvas 標(biāo)簽已經(jīng)是 HTML5 最偉大的改進(jìn)之一,因?yàn)樗梢宰屛覀冊(cè)诓皇褂脠D片的情況下實(shí)現(xiàn)網(wǎng)頁(yè)的圖形設(shè)計(jì)。它就像一塊畫布,本身沒(méi)有繪制能力,但卻把繪制 API 展現(xiàn)給客戶端 JavaScript,我們借助 JavaScript 的支持,在畫布范圍內(nèi)盡情發(fā)揮,達(dá)到想要的效果。

技術(shù)選型

這個(gè)功能無(wú)論是 Canvas、SVG 或是 Flash,都可以實(shí)現(xiàn),但是我們?yōu)槭裁催x擇了 Canvas 呢?

首先,由于功能上我們需要支持移動(dòng)平臺(tái),所以 Flash 我們就可以直接棄掉,它在移動(dòng)端方面并沒(méi)有得到友好的支持,但 Canvas 和 SVG 都具有很好的跨平臺(tái)能力,我們?nèi)绾尉駬瘢旅嫖覀儊?lái)對(duì)比一下。

  •  Canvas 基于像素,提供 2D 繪制函數(shù),提供的功能更原始,適合像素處理、動(dòng)態(tài)渲染和大數(shù)據(jù)量繪制,可控性高,繪制完了基本不記錄過(guò)程,繪圖性能會(huì)更好一點(diǎn),各大廠商也早都實(shí)現(xiàn)了canvas的硬件加速機(jī)制。  
  • SVG 為矢量,提供一系列圖形元素,功能更完善,建立了一大堆可交互對(duì)象,本性長(zhǎng)于交互,但性能會(huì)弱些,更適合靜態(tài)圖片展示,高保真文檔查看和打印的應(yīng)用場(chǎng)景。

兩者各有自己的擅長(zhǎng)領(lǐng)域, 基于以上,我們選擇了 Canvas 來(lái)實(shí)現(xiàn)簽字功能。

下面,我們來(lái)看一下實(shí)現(xiàn)效果。

了解了 Canvas 來(lái)源、技術(shù)選型和最終呈現(xiàn)效果,接下來(lái)、我們會(huì)從創(chuàng)建、繪制、監(jiān)聽、重繪、圖片處理等五部分進(jìn)行撰寫,讓我們一起走進(jìn) Canvas 繪制的世界。

創(chuàng)建畫布

首先,我們需要判斷瀏覽器是否支持 Canvas :

isCanvasSupported = (): boolean => {
    let elem = document.createElement('canvas');
    return !!(elem.getContext && elem.getContext('2d'));
}

然后根據(jù)判斷結(jié)果選擇創(chuàng)建 Canvas 畫布還是展示提示

{isCanvasSupported ?
     <canvas ref={canvas => (this.canvas = canvas)} height={canvasHeight} width={canvasWidth}>
    :對(duì)不起,當(dāng)前瀏覽器暫不支持此功能!
}

我們知道,每個(gè) Canvas 節(jié)點(diǎn)都有一個(gè)對(duì)應(yīng)的 context 對(duì)象, 我們可以通過(guò) Canvas 對(duì)象的 getContext() 方法,直接把量字符串 “2d” 作為唯一的參數(shù)傳遞給它來(lái)獲取。接下來(lái),我們通過(guò) ref 獲取 Canvas 元素,再通過(guò) getContext() 方法得到一個(gè)畫布上繪圖的環(huán)境。

let cxt = this.canvas.getContext('2d');
this.setState({cxt: cxt});

環(huán)境已經(jīng)準(zhǔn)備妥當(dāng),接下來(lái)我們就開始進(jìn)行繪制工作吧!

繪制

首先繪制開始路徑:

cxt.beginPath();

然后設(shè)置當(dāng)前線條的寬度:

cxt.lineWidth = 5;

設(shè)置線條的顏色:

cxt.strokeStyle = '#000';

通過(guò) moveTo 和 lineTo ,我們來(lái)繪制一條線

cxt.moveTo(0,0);
cxt.lineTo(150,0);
// 繪制已定義的路徑
cxt.stroke()

但是,我們發(fā)現(xiàn)繪制的線條比較生硬

這時(shí),我們可以通過(guò) lineCap 改變線條末端線帽的樣式,為每個(gè)末端添加圓形線帽,減少線條的生硬感

cxt.lineCap = 'round';

同時(shí),我們還可以通過(guò)設(shè)置 lineJoin,指定條線交匯時(shí)為圓形邊角

cxt.lineJoin = 'round';

但我們又發(fā)現(xiàn),繪制的線條有明顯的鋸齒,此時(shí)我們就需要借助 Canvas 為我們提供的繪制元素陰影的功能來(lái)模糊邊緣出現(xiàn)的鋸齒,因?yàn)橛嘘幱?,所以我們可以適當(dāng)改變 lineWidth 值

cxt.shadowBlur = 1;
cxt.shadowColor = '#000';

是不是變得圓潤(rùn)很多,到這里,我們繪制線路的方法已經(jīng)準(zhǔn)備完事,接下來(lái)我們來(lái)看一下怎么監(jiān)聽畫布事件來(lái)實(shí)現(xiàn)連貫執(zhí)行繪制吧!

監(jiān)聽畫布事件

因?yàn)槲覀冃枰瑫r(shí)兼容 PC 端和移動(dòng)端,所以我們需要事先需要判斷一下對(duì)應(yīng)執(zhí)行的事件

this.state = {
events: ('ontouchstart' in window) ? ['touchstart', 'touchmove', 'touchend'] : ['mousedown', 'mousemove', 'mouseup']
}

在畫布初始化之后,我們開始監(jiān)聽 events[0] 事件

this.canvas.addEventListener(this.events[0], startEventHandler, false);

在startEventHandler函數(shù)中監(jiān)聽 events[1] 和 events[2] 事件

this.canvas.addEventListener(events[1], moveEventHandler, false);
this.canvas.addEventListener(events[2], endEventHandler, false);

重點(diǎn)來(lái)了,我們核心的內(nèi)容就是計(jì)算、描繪劃過(guò)的路徑

moveEventHandler(event: any): void {
    event.preventDefault();
    const {ctx, isSupportTouch} = this.state;
    const evt = isSupportTouch ? event.touches[0] : event;
    const coverPos = this.canvas.getBoundingClientRect();
    const mouseX = evt.clientX - coverPos.left;
    const mouseY = evt.clientY - coverPos.top;
    cxt.lineTo(
       mouseX,
       mouseY
    );
    cxt.stroke();
}

了解 Canvas 的知道, Canvas 畫布為我們提供了一個(gè)用來(lái)作圖的平面空間,該空間的每個(gè)點(diǎn)都有自己的坐標(biāo),x 表示橫坐標(biāo),y 表示豎坐標(biāo)。原點(diǎn) (0, 0) 位于圖像左上角,x 軸的正向是原點(diǎn)向右,y 軸的正向是原點(diǎn)向下。

于是我們通過(guò) getBoundingClientRect() 方法獲得頁(yè)面 Canvas 元素相對(duì)瀏覽器視窗的位置左邊和頂部的像素距離,再利用 clientX,clientY 事件屬性返回當(dāng)事件被觸發(fā)時(shí)鼠標(biāo)指針向?qū)τ跒g覽器頁(yè)面的水平和垂直坐標(biāo),最后通過(guò) lineTo 和 stroke 來(lái)繪制路徑。

同時(shí),我們要記得在 events[2] 事件執(zhí)行之后,移除 events[1]、events[2] 事件,否則會(huì)造成一直繪制。

endEventHandler(event: any): void {
    event.preventDefault();
    const {events, moveEventHandler, endEventHandler} = this.state;
    this.canvas.removeEventListener(events[1], moveEventHandler, false);
    this.canvas.removeEventListener(events[2], endEventHandler, false);
}

如此反復(fù)循環(huán)上述事件操作,我們的簽字功能就基本實(shí)現(xiàn)了。

重新繪制

簽字過(guò)程中,簽錯(cuò)或是簽的過(guò)于潦草是必不可免的,所以我們需要支持清空簽字的功能,這時(shí),我們利用 Canvas 的 clearRect() 方法就可以幫助我們清除畫布區(qū)域內(nèi)容。

cxt.clearRect(0, 0, canvasWidth, canvasHeight);

圖片處理

繪制之后我們還沒(méi)完事,我們還需要把繪制的簽名上傳保存。這時(shí),我們可以利用 toDataURL() 方法將 Canvas 轉(zhuǎn)化成一般的圖像文件形式。

通常我們直接執(zhí)行以操作就能轉(zhuǎn)化成 data URI,然后再利用 ajax 請(qǐng)求上傳就完事了。

dataurl = this.canvas.toDataURL('image/png');
//or
dataurl = this.canvas.toDataURL('image/jpeg', 0.8);

但是,由于各種業(yè)務(wù)需求,我們有時(shí)需要攜帶頁(yè)面其他內(nèi)容,這時(shí),我們可以借助 html2canvas 來(lái)實(shí)現(xiàn)。html2canvas 可以幫助我們對(duì)瀏覽器端整個(gè)或部分頁(yè)面進(jìn)行截屏,并渲染成一個(gè) Canvas ,然后我們?cè)诶?toDataURL() 方法進(jìn)行處理。

說(shuō)道 html2canvas,順便給大家一個(gè)繞坑提示,它在一些低版本瀏覽器截出來(lái)的圖片是空白的,原因是使用了flex 布局,而html2canvas并不支持 -webkit-flex 或 -webkit-box,所以無(wú)法將 HTML 生成 Canvas,從而導(dǎo)致了截出一張白屏。

解決辦法:

  • 不使用flex布局
  • 修改 html2canvas 源碼,在html2canvas\dist\npm\parsing\display.js 文件中增加 -webkit-flex 和 -webkit-box 也返回 DISPLAY.FLEX; 小結(jié)

通過(guò)以上幾步,我們就基本實(shí)現(xiàn)了在線簽名的功能。值得注意的是,這個(gè)項(xiàng)目我們使用的 React+TypeScript 環(huán)境構(gòu)建,上述代碼的實(shí)際使用需要結(jié)合自己環(huán)境進(jìn)行適當(dāng)修改。

文中使用的是 Canvas 比較淺層的繪制知識(shí),如果想利用Canvas進(jìn)動(dòng)畫制作、物理效果模擬、碰撞檢測(cè)、游戲開發(fā)、移動(dòng)應(yīng)用開發(fā)、大數(shù)據(jù)可視化開發(fā),還需要我們復(fù)習(xí)一下之前學(xué)過(guò)的數(shù)學(xué)幾何、物理方面的知識(shí),然后在慢慢摸索?,F(xiàn)在很多成熟的圖表插件都是用 Canvas 實(shí)現(xiàn)的,例如 Chart.js、ECharts等,里面很多好看炫酷的圖表,幾乎覆蓋了所有圖表的實(shí)現(xiàn)。Canvas還有很多開源類庫(kù),例如 ZRender、createJS、Pixi.js等,ECharts底層也是依賴輕量級(jí)的 Canvas 類庫(kù) ZRender 進(jìn)行封裝的。

好了,我們今天就先聊到這里,如有任何疑問(wèn),還請(qǐng)留言。以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。 

標(biāo)簽:酒泉 廣西 西寧 淮安 咸寧 佳木斯 十堰 南京

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《如何用canvas實(shí)現(xiàn)在線簽名的示例代碼》,本文關(guān)鍵詞  如,何用,canvas,實(shí)現(xiàn),在線,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《如何用canvas實(shí)現(xiàn)在線簽名的示例代碼》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于如何用canvas實(shí)現(xiàn)在線簽名的示例代碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    狠久久av成人天堂| 免费av在线电影| 日韩黄色在线播放| 一本不卡影院| 日本高清一区二区视频| 免费国产羞羞网站视频| 亚洲aⅴ乱码精品成人区| 亚洲插插视频| 97高清视频| 成人免费福利片| 欧美成人精品一区二区免费看片| 在线播放av网站| 国产综合婷婷| 精品国产一区二区在线观看| 日本午夜精品理论片a级app发布| 91免费视频黄| 中文字幕欧美精品在线| 日韩成人伦理电影在线观看| 欧洲天堂在线观看| 麻豆精品视频入口| 中文精品视频一区二区在线观看| 欧美一区在线看| 91久久在线| 丁香天五香天堂综合| www.青青草.com| 欧美电影一区二区三区| 激情综合色综合久久综合| 自拍偷拍亚洲| 久久久久久蜜桃一区二区| 在线观看精品视频看看播放| eeuss影院18www免费| 一道本无吗一区| www.久久99| 夫妇交换中文字幕| 高清国语自产在线观看| 另类小说色综合| 51精品国产| caoporm免费视频在线| 国产在线观看91| 免费无码av片在线观看| 你懂的在线观看视频| 久久精品九色| 超碰中文在线| 精品视频高清无人区区二区三区| jizz在线播放| 国产在线不卡视频| 日本乱码高清不卡字幕| 日韩欧美一区免费| 亚洲欧美视频一区二区| 国产在线拍偷自揄拍精品| 日韩亚洲一区在线| 久久精品九色| 国产精品扒开腿做爽爽爽视频软件| 黄色毛片网站| 秋霞午夜鲁丝一区二区老狼| 天天爽天天狠久久久| 国产精品免费人成网站酒店| 欧美日韩亚洲综合一区| 精品人伦一区二区三区蜜桃网站| 欧美禁忌电影网| 一区二区在线免费播放| 欧美精品在线免费| 欧美激情在线一区二区| 成人免费视频97| 老司机午夜精品视频| 手机在线免费毛片| 亚洲男人的天堂av| 国产福利一区二区三区在线播放| 伊人精品久久| 亚洲国产美女久久久久| 青青草成人免费在线视频| 欧美成人直播| 久久噜噜色综合一区二区| 欧美精品少妇videofree| 成年人免费大片| 日韩综合另类| av高清一区二区| 欧美成人精品影院| 久久精品国产亚洲AV无码男同| 成人在线超碰| 欧美高清视频在线观看| 欧美日韩国产在线一区| 免费黄网站欧美| 777永久免费网站国产| 粉嫩av一区二区三区四区五区| 日韩精品一区二区三区四区视频| 精品午夜av| 亚洲欧美日产图| 久久婷婷开心| 日产精品久久久久久久| 在线日韩中文| 精品亚洲一区二区三区在线播放| 欧美性视频网站| 精品视频在线播放色网色视频| 成人网18入口| 亚洲自偷自拍熟女另类| 五月婷婷激情网| 欧美人动与zoxxxx乱| 国产传媒一区在线| 天堂在线视频| 日韩免费视频在线观看| 99精品国产一区二区三区2021| 国产午夜视频在线| 欧美巨乳在线| 波多野结衣在线一区| 后入内射欧美99二区视频| 综合激情网站| 亚洲欧美国产精品| 色18美女社区| 亚洲天堂av影院| 亚洲 国产 欧美一区| 国产女主播一区二区三区| 99久久久久久久久| 国产伦精品一区二区三区照片91| 人妻大战黑人白浆狂泄| 91超薄肉色丝袜交足高跟凉鞋| a级在线观看视频| 欧美一a一片一级一片| 国产在线视频欧美| 久久一区亚洲| 国产在线一二区| 久久人人97超碰精品888| 日本欧洲国产一区二区| 999国产精品永久免费视频app| 亚洲精品女人久久久| 色中色综合成人| 国产精品视频中文字幕| 成人高清一区| 国产精品全国免费观看高清| 成全电影大全在线观看| 亚洲精品久久久久久国| 欧美日韩亚洲一二三| 日韩精品福利网| 激情五月婷婷在线| 在线手机中文字幕| 中文字幕人妻一区二区三区视频| 久久久久久毛片免费看| 亚洲精品在线看| 自拍偷拍国产亚洲| 国产精品自拍视频| 亚洲日韩第一页| 懂色av一区二区三区四区五区| 国产福利精品一区二区| 亚洲乱码免费伦视频| 亚洲熟女乱综合一区二区| 日韩免费观看一区二区| 亚洲色图第一页| jizz内谢中国亚洲jizz| 午夜精品区一区二区三| 精品国产丝袜高跟鞋| 亚洲一区二区久久久久久久| 天海翼在线视频| 97福利网站在线观看视频| 亚洲福利影视| 综合网在线观看| 最新的欧美黄色| 电影在线高清| 亚洲天堂视频在线| 国产三级做爰高清在线| 国产精品美女久久久| 丝袜制服影音先锋| 亚洲精品成av人片天堂无码| 黑人巨大xxx| 污视频在线观看免费| 妞干网免费视频| av电影在线网站| 欧美日韩国产a| 精品婷婷色一区二区三区蜜桃| 我和岳m愉情xxxⅹ视频| 久久久久久尹人网香蕉| 欧美系列日韩一区| 天涯成人国产亚洲精品一区av| 国产精品久久久对白| 国产一区二区视频在线观看免费| 又色又爽又黄无遮挡的免费视频| 虎白女粉嫩尤物福利视频| 亚洲娇小娇小娇小| 日韩欧美电影在线观看| 亚洲国产天堂久久综合| 久久久久久毛片| seba5欧美综合另类| 中文一区二区三区四区| 麻豆亚洲一区| 精品亚洲永久免费| 久久国产精品高清一区二区三区| 国产高清大尺度一区二区不卡| 最近免费中文字幕中文高清百度| 亚洲精品视频在线播放| 中文字幕免费在线播放| 国产精品久久国产精麻豆99网站| 国产一区二三区好的| 日本在线播放一区二区| 在线免费观看h视频| 欧美人妻一区二区三区| 久久伊伊香蕉| 久久亚洲精品成人| 人人艹在线视频| 欧美一区二区三区免费大片| jizz亚洲| 在线观看爽视频| 最近中文字幕mv免费高清电影| 亚洲乱码久久| 欧美系列亚洲系列| 91精品国产91久久久久久青草| 成人黄页网站视频| 精品人妻一区二区免费视频| 国产精品久久久久久久天堂第1集| 亚洲va久久久噜噜噜无码久久| 羞羞视频在线免费国产| 久久不卡国产精品一区二区| www.99.热| 欧美韩国亚洲| 韩国av免费在线观看| 亚洲制服少妇| 视频一区二区三区四区五区| 久久久久久国产精品无码| 欧美精品一区二区三区三州| 青青草国产成人99久久| 日本久久久久久| 欧美精品免费在线| 中文字幕久久久av一区| 国产精品久久久久免费a∨| 免费一区二区三区在线视频| 蜜桃网站在线观看| 中文字幕久热精品视频在线| 3d动漫精品啪啪| 亚洲一区二区在线免费| 久久先锋影音av| 免费看黄色三级| 欧美精品videosex性欧美| 粉嫩av一区二区三区免费观看| 欧美大香线蕉线伊人久久国产精品| 国产精品嫩草影院久久久| 国产超级av| 日韩精品在线电影| 免费高清在线观看电视| 首页国产精品| 国产制服91一区二区三区制服| h版电影在线播放视频网址| 亚洲熟女乱色一区二区三区| 欧美伦理影院| 亚洲一区在线观看免费观看电影高清| 日韩**一区毛片| 国产久一一精品| 国产精品丝袜黑色高跟鞋| 日日摸.com| 精品国产免费观看一区| 在线观看精品视频| 日本大胆人体视频| 欧美三区视频| 久热久热免费视频中文字幕777| 久久精品黄色片| 国产精品久久久久久久裸模| 国产日韩精品视频一区二区三区| 国产欧美日韩一区二区三区在线| 中文字幕一区二区三区乱码图片| 欧美性猛交xx| 天天干视频在线| 欧美乱妇一区二区三区不卡视频| 美女被啪啪一区二区| 中文字幕一区二区三区在线播放| 国产传媒久久文化传媒| 日韩性xxxx| 亚洲综合图片网| 国产精品中文字幕制服诱惑| 精品在线视频一区二区三区| 欧美人交a欧美精品| yiren22亚洲综合伊人22| 国产美女av| 国产成人精品亚洲线观看| 2020中文字幕在线| 91在线你懂得| 黄色免费网址大全| 久久精品伊人| 91久久精品一区二区三区| 亚洲一级淫片| 香蕉久久夜色精品国产| 免费视频一区二区三区在线观看| 色综合97天天综合网| 成人公开免费视频| 99re6在线视频| av一级在线观看| 国产在线中文字幕| www.色播.com| 2019国产精品自在线拍国产不卡| 中文字幕一区二区三区四区在线视频| 人妻体内射精一区二区| 国精产品一区一区二区三区mba| 女人天堂av手机在线| free性欧美高清另类| 欧美国产欧美亚洲国产日韩mv天天看完整| 综合久久一区二区三区| 精品国产一区二区亚洲人成毛片| 91成人app| 波多野结衣中文在线| av片免费观看| 日韩欧美在线一区二区| 国产麻豆视频在线观看| 成人小视频免费看| 国产精品久久久久久久免费看| 666精品在线| 自由日本语亚洲人高潮| 91中文字幕精品永久在线| 婷婷五月色综合香五月| 国产欧美日韩精品在线观看| 男人与禽猛交狂配| 国产成人av一区| 色综合天天天天做夜夜夜夜做| 伊人狠狠色丁香综合尤物| 你懂的在线视频观看| 9l视频自拍九色9l视频成人| 舔足天天操天天射| 能看的毛片网站| 一区二区三区免费在线视频| 91九色偷拍| 在线午夜影院| 亚洲人成精品久久久| 精品盗摄一区二区三区| 九九热线有精品视频99| 日韩大胆成人| 91黄色免费网站| 亚洲男女一区二区三区| 亚洲一区二区乱码| 黄色aaa大片| 一级毛片久久久| 免费黄色在线观看| 中文人妻熟女乱又乱精品| 成人黄色电影在线|