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

拖拽:從 Dojo 到 HTML 5

開發 前端
拖拽是 Web 2.0 應用中最流行的技術之一。本文將介紹如何在網絡應用程序中使用 dojo 和 HTML5 這兩種技術的拖拽功能。并將通過示例詳細介紹 HTML5 的拖拽功能。

Dojo 及 HTML 5 簡介

Dojo 是目前***的開源 JavaScript 工具庫之一,很多開發者以及企業用戶都把Dojo 作為***的 JavaScript 工具。Dojo 為 Web 應用的開發提供了大量的客戶端組件,能夠讓你可以方便的進行 HTML DOM 操作、拖拽、AJAX 調用、定制可視化控件等來使得你的 Web 應用變成富網絡應用 (RIA)。而且 Dojo 在性能、可訪問性、多語言支持以及文檔方面都做的非常出色,這也是企業選擇 Dojo 的原因之一。

51CTO推薦專題:HTML 5 下一代Web開發標準詳解

HTML 5 是***一代的 HTML,它將成為 HTML、XHTML 以及 HTML DOM 的新標準, HTML 5 是 W3C 與 WHATWG 合作的結果,目前仍外于開發中 ; 自從上一代 HTML4,Web 世界已經發生了巨大的變化,HTML 5 的到來將更大的促進 Web 的發展,HTML 5 提供了很多新的功能,主要有:

◆新的 HTML 元素,例如 section, nav, header, footer, article 等

◆用于繪畫的 Canvas 元素

◆用于多媒體播放的 video 和 audio 元素

◆用于定位的 Geolocation API

◆本地存儲以及離線應用

◆Web Workers

◆拖拽 API

◆文件 API

我們主要對 HTML 5 的拖拽功能進行講解,并結合文件 API 與桌面進行交互。來與 Dojo 的 dnd 拖拽組件進行比較。

使用 Dojo 創建及定制拖拽應用

類似 Dojo 其他組件,拖拽的實現有兩種方式:聲明式和編程式。在這里我們使用聲明式的方式做簡要的介紹。

在 Dojo 拖拽實現中,有兩個重要的元素 dojo.dnd.Source 和 dojo.dnd.Target。這兩個元素分別標示了拖拽中的源容器 Source 和目標容器 Target。值得注意的是源容器 Source 默認也是目標容器 Target,而不需要作目標容器 Target 的聲明。我們在源容器 Source 中創建一些可以拖動的元素,要讓這些元素可拖動,我們要為這些元素添加 class 屬性值 DojoDndItem。下面的示例代碼定義了一個源容器 Source 以及一些可以拖動的元素。在這些可以拖動的元素中我們可以定義它們的拖拽類型 dndType。dndType 的值開發者可以自己定義,而目標容器 Target 元素的 accept 屬性定義了該目標容器接受的拖拽類型。

清單 1. 創建拖拽的源容器和可拖拽的元素

  1. <div id="source" style="height:400px;" dojoType="dojo.dnd.Source">   
  2.   <div id="item1" class="dojoDndItem item" dndType="divItem">item1</div>   
  3.   <img src="w3c.jpg" class="dojoDndItem item" dndType="imageItem"></img>   
  4.   <a href="http://www.w3.org/TR/html5/" class="dojoDndItem item" dndType="linkItem"> 
  5.   HTML5 specification</a>   
  6.  </div>  

對于 Target 我們可以創建一個 div,然后加上屬性 dojoType=”dojo.dnd.Target”和屬性 accept。不在 accept 中的類型的 dojoDndItem 元素將不被這個容器接受。例如清單 2 中的目標容器只接受 divItem 和 imageItem 這兩種類型,那么清單 1 中的 linkItem 將不能被拖到這個目標容器中。

清單 2. 創建拖拽的目標容器和可接受的類型

  1. <div id="target" style="height:400px;" dojoType="dojo.dnd.Target"   
  2. accept="divItem, imageItem"> 

真正 Web 應用的拖拽沒有這么簡單,開發者往往需要在拖拽的過程中更多的介入。這時候可以通過對 Dojo 提供的 dojo.dnd.Source 和 dojo.dnd.Target 進行繼承擴展,開發滿足業務需要的功能和特性。這里將不贅述。

使用 HTML 5 創建拖拽應用

在這一章中,我們將要使用 HTML 5 創建一個簡單的拖拽應用,如圖 1 所示,用戶可以把網頁上內容從左邊的區域拖放到右邊的區域。這個應用程序的代碼可到附件中可以下載。

圖 1. HTML 5 拖拽應用效果圖

拖拽:從 Dojo 到 HTML5 

#p#

創建可以拖動的節點

使用 HTML 5 創建拖拽只需要對可拖拽的節點進行聲明——給可以拖拽的節點添加 draggable 屬性并設值為 true。如清單 3 中的 div 節點,通過添加 draggable 屬性就可以拖拽了。在 HTML 5 中<img>和<a> 默認情況下是可以拖拽的,所以不需要設置 draggable 屬性。

清單 3. 通過添加 draggable 屬性來創建源容器中可以拖動的節點

  1. <div id="source" style="height:300px;">   
  2.   <div id="item1" class="item" draggable="true">item1</div>   
  3.   <img id="item2" src="w3c.jpg" class="item"></img>   
  4.   <a id="item3" href="http://www.w3.org/TR/html5/" class="item">HTML5 specification</a>   
  5.  </div>  

創建 HTML 5 拖拽的源容器和目標容器

在 HTML 5 中,我們需要給指定的節點來綁定一些事件來使之成為具有源容器或目標容器的功能。在 HTML 5 的拖拽過程中的事件有 7 個,分別是應用在目標容器或拖動節點上的 dragstart, drag, dragend 等 3 個事件,以及應用在目標容器節點上的dragenter, dragover, dragleave 和 drop 等 4 個事件。表 1 中對這些事件的觸發機制和常見的操作進行了描述。

表 1. HTML 5 拖拽過程中可以綁定的事件

HTML5

備注 : 在 Dojo 中所有 dnd 源容器或目標容器在拖拽開始時都會調用 onDndStart 事件方法,而在 HTML 5 中只有拖動的節點及源容器可以觸發 dragstart 事件,其他容器包括目標容器在拖動開始時不會感知源容器及拖動節點的 dragstart 事件。

清單 4 展示給目標容器綁定 dragenter, dragover, dragleave, drop 事件的示例代碼。在 dragenter 和 dragleave 事件中,我們對目標容器的背景樣式進行修改使得用戶感知目標容器的狀態(如圖 2 所示)。在 dragover 事件中我們對清單 3 中的鏈接元素(id 屬性值為 item3)的節點進行了限制。drop 事件中我們要把拖動的節點插入到目標節點的 DOM 結構中。

清單 4. 創建目標容器的事件

  1. var target = dojo.byId('target');   
  2.  dojo.connect(target, 'dragover', function(e){   
  3.   // doesn't allows link item (id = “item3”) to drop   
  4.   if (e.dataTransfer.getData('id') != "item3"){   
  5.     e.preventDefault();   
  6.   }   
  7.  });   
  8.  
  9.  dojo.connect(target, 'dragenter', function(e){   
  10.   //add style   
  11.   dojo.addClass(target, "over");   
  12.  });   
  13.  
  14.  dojo.connect(target, 'dragleave', function(){   
  15.   //remove style   
  16.   dojo.removeClass(target, "over");   
  17.  });   
  18.  
  19.  dojo.connect(target, 'drop', function(e){   
  20.   //remove style if drop is successful   
  21.   dojo.removeClass(target, "over");   
  22.       
  23.   // stops the browser from redirecting   
  24.   if (e.stopPropagation) e.stopPropagation();   
  25.       
  26.     
  27.   var itemId = e.dataTransfer.getData('id');   
  28.   var dragItem = dojo.byId(itemId);   
  29.   e.target.appendChild(dragItem);     
  30.     
  31.  }  

圖 2. 當拖動節點到目標容器是時對目標容器進行高亮顯示

HTML 5

從清單 4 中我們在目標容器上對事件對象的 dataTransfer 屬性進行了 getData 操作——取出了關鍵字 id 對應的數據。在 HTML 5 拖拽過程中,用戶可以在表 1 定義的事件里通過 event.dataTransfer 得到 DataTransfer 對象 ( 詳見 W3C 網站上的接口定義)并對其進行定制傳輸數據、定制拖拽影像等操作。例如我們可以在 dragstart 事件中通過 setData 方法初始化數據(代碼詳見附件)。表 2 中列出了這各數據對象的方法及常用的用途。

表 2. DataTransfer 的常用方法

HTML 5

與桌面進行交互

除了在網頁中對一些頁面上的元素進行拖拽以外,HTML 5 擴充的 API 還允許網頁與文件系統進行交互,比如從文件系統拖一個或幾個文件到網頁中,或是從網頁拖到文件系統中。以前者為例,當我們從桌面或其它文件夾拖動文件到網頁上某個目標結點時,我們可以通過 DataTransfer 的 files 屬性得到這些文件數量以及文件的屬性及內容。DataTransfer.files.length 的大小即為拖動文件的數量,當沒有拖動文件時,files.length 的大小即為 0,可用來判斷是否有文件拖動。

清單 5. 通過 dataTransfer.files 拿到文件對象

  1. var files = e.dataTransfer.files;   
  2.   var msg = "";   
  3.   for (var i = 0; i < files.length; i++) {   
  4.    console.log ("Name: " + files[i].name + ", fileSize: " + files[i].size);   
  5.    var dataReader = new FileReader();   
  6.    dataReader.onload = function(){   
  7.      msg += ("content: " + dataReader.result);   
  8.    }   
  9.   dataReader.readAsText(files[i]);   
  10.  }  

從清單 5 中的代碼中我們可以看到 files 中存儲了若干 file 對象,通過這個對象可以獲取文件名,文件大小等。然后我們可以通過 FileReader 獲取文件的內容。獲取內容的 FileReader 并不是 HTML 5 拖拽的功能,而是借助了 File API 。它可以以文本,二進制,以及 dataURL 的形式讀取,實現讀取文件內容實現文件上傳等,在我們的示例代碼 HTML 5dndfile.html 中我們演示了通過 readAsText 方法讀取文本文件和通過 readAsDataURL 方法讀取圖像文件的使用。

與桌時行交互時,我們只需要對將清單 5 中給出的代碼稍加修改加到目標容器的 drop 事件中,其它事件不用修改。例如清單 6 所示。

清單 6. 在目標容器的 drop 事件讀取文本文件的內容

  1. dojo.connect(textdiv, 'drop', function(e){   
  2.   if (e.stopPropagation){   
  3.     e.stopPropagation(); // stops the browser from redirecting   
  4.   }   
  5.   var files = e.dataTransfer.files;   
  6.   var msg = "";   
  7.   for (var i = 0; i < files.length; i++) {   
  8.     msg += ("Name: " + files[i].fileName + ", fileSize: " + files[i].fileSize);   
  9.     var dataReader = new FileReader();   
  10.     dataReader.onload = function(){   
  11.       msg += ("content: " + dataReader.result);   
  12.       textdiv.textContent = msg;   
  13.     }   
  14.     dataReader.readAsText(files[i]);   
  15.   }   
  16.  });  

這樣當我們拖動一個文本文件到指定的目標區域時,我們就可以看到文件內容。

Dojo 和 HTML 5 拖拽功能的比較和選擇

Dojo 實現了一套完整的拖拽框架和事件機制,并提供了默認的實現,用戶可以通過聲明的方式快速實現拖拽,而且還可以通過繼承默認的 Source、Target 以及 Avatar 實現拖拽定制化。從使用經驗上來看,Dojo 更傾向于完整的 DOM 節點操作,而數據的傳輸往往是通過綁在 DOM 節點上的屬性實現的。

HTML 5 的拖拽現在還在規范的定制和完善中,各個主流瀏覽器對該規范的支持也是各有千秋,基本上還處于發展的階段。本文中提供的示例僅在 Firefox 3.6 以上版本測試通過。HTML 5 作為新時代的 HTML 協議,拖拽事件中的 DataTransfer 接口體現了拖拽過程中以數據傳輸為中心的發展前景。與此同時,跟 File API 的結合可以使得 Web 應用的數據交互通過拖拽操作延伸到最終用戶的桌面及文件系統上。另外 HTML 5 還可以實現在不同瀏覽器窗口之間的拖拽操作,也是拖拽過程傳輸數據的一種應用。

小結

對比 Dojo 和 HTML 5,我們不難發現在使用 Dojo 比 HTML 5 可以更容易地開發出體驗效果非常好的拖拽應用;而 HTML 5 作為 HTML 的新規范,注重了拖拽過程中數據傳輸的重要性。兩者如果可以融合則可以互補其短。通過實驗,筆者發現 Dojo dnd 與 HTML 5 拖拽暫時不能在同一結點上同時使用,由于 Dojo 是在 HTML4 規范基礎上的工具包,它們之間可能因在事件上的沖突會導致 HTML 5 拖拽不可用。但是我們有理由相信,隨著 HTML 5 規范的發展,將會有支持 HTML 5 拖拽的工具包出現,屆時開發者可以更為便捷的開發出更為豐富的 Web 應用。

原文鏈接:http://www.ibm.com/developerworks/cn/web/1102_guoqing_draganddrop/

【編輯推薦】

  1. 初學者必知的HTML 5入門級技巧
  2. 12個精妙有趣的HTML 5應用
  3. HTML 5新的 Input 類型
  4. 20個HTML 5和CSS3的免費網站模板與教程
  5. 用Dojo實現Ajax請求:XHR、跨域、及其他
責任編輯:陳貽新 來源: developerWorks
相關推薦

2011-02-25 10:19:23

ibmdwHTML5Web開發

2012-04-24 09:48:49

HTML5

2011-08-01 16:43:51

ibmdwHTML5Dojo

2011-09-08 09:38:46

HTML5 WidgeDojo

2011-04-25 14:20:49

DojoHTML 5

2011-04-22 15:02:19

HTML5Dojo

2012-05-17 13:17:26

HTML5

2010-07-23 10:08:44

Dojo 1.5

2011-08-18 09:05:50

HTML 5

2013-06-06 10:42:25

2015-03-19 14:50:27

編程拖拽編程合格程序員

2012-05-28 10:01:19

2015-12-02 11:18:32

2020-09-09 15:30:07

5GCPRI接口

2012-01-18 10:49:05

ibmdw

2011-11-24 21:12:35

ibmdw

2013-03-25 17:16:11

2019-09-27 10:25:39

5G浪潮云計算

2011-10-03 20:23:34

2009-09-22 12:59:58

ibmdwDojo
點贊
收藏

51CTO技術棧公眾號

91麻豆精品国产91久久久更新时间| 国产视频视频一区| 欧美激情第99页| 国产日韩视频一区| 国产资源在线观看入口av| 久久久蜜桃精品| 91色精品视频在线| 日韩欧美中文字幕一区二区| 国产精品一区高清| 日韩一区二区三区四区五区六区| 成人免费观看在线| 国产一区二区三区福利| 国产乱码精品一区二区三| 欧美大片网站在线观看| 国产成人av一区二区三区不卡| 青青在线精品| 亚洲一区二区高清| 小说区图片区图片区另类灬| 好吊视频一二三区| 麻豆免费看一区二区三区| 久久久久国产视频| 男人的午夜天堂| 色婷婷精品视频| 69堂国产成人免费视频| 日韩av一二三四| av大片在线看| 波多野结衣中文字幕一区二区三区| 国产精品自拍视频| 日韩久久中文字幕| 欧美国产三级| 日韩在线视频免费观看高清中文| 国产ts丝袜人妖系列视频| 欧美午夜在线播放| 欧美日韩在线观看一区二区| 国产超级av在线| 免费av不卡在线观看| 国产精品欧美一级免费| 久久精品国产一区二区三区不卡| 精品国产av一区二区| 免费久久精品视频| 国产精品国语对白| 亚洲欧美偷拍一区| 亚洲一区中文| 午夜伦理精品一区| 久久精品女人毛片国产| 欧美日韩爆操| 欧美成人一区二区三区电影| 日韩av毛片在线观看| 国产精品免费不| 精品香蕉一区二区三区| 国产精品无码网站| 色吊丝一区二区| 亚洲欧美日本精品| 欧美激情aaa| 欧美在线色图| 中文日韩电影网站| 一本在线免费视频| 欧美jizz| 久久6免费高清热精品| 加勒比av在线播放| 欧美特黄视频| 久久免费视频网| 成人免费区一区二区三区| 日韩网站在线| 日韩免费在线观看视频| 这里只有久久精品视频| 青青草精品视频| 国产在线一区二区三区| 国产xxxx孕妇| 成人永久看片免费视频天堂| 国产日韩欧美综合精品| 日本五码在线| 国产精品嫩草99a| 亚洲黄色网址在线观看| 青春草免费在线视频| 亚洲成人精品一区| 热久久精品国产| 在线观看亚洲精品福利片| 欧美一区二区三区成人| 娇妻高潮浓精白浆xxⅹ| 伊人久久大香线蕉av不卡| 国产亚洲精品久久久久久牛牛 | 伊人成人在线观看| 另类成人小视频在线| 91在线网站视频| 后入内射欧美99二区视频| 99精品一区二区三区| 欧美高清视频一区| 免费黄色网页在线观看| 亚洲伊人色欲综合网| 国产91在线免费| 精品欧美一区二区三区在线观看 | 中文字幕 欧美日韩| 91精品国产自产精品男人的天堂| 日韩电影在线观看中文字幕| 毛片aaaaaa| 一区在线视频观看| 国产精品久久久久久久久久| 亚洲精品国产片| 欧美韩国日本不卡| 日韩精品一区二区在线视频| 日韩三区在线| 日韩精品中文字幕一区| 日本二区在线观看| 激情一区二区| 成人精品在线观看| 香蕉视频911| 亚洲激情自拍偷拍| 一级黄色香蕉视频| 国产欧美一区二区三区米奇| 最好看的2019年中文视频| 国产大片中文字幕| 狠狠狠色丁香婷婷综合激情| 蜜桃成人在线| 天堂va在线| 欧美男人的天堂一二区| 黄色工厂在线观看| 欧美精品一级| 成人日韩av在线| аⅴ资源新版在线天堂| 岛国av在线不卡| 香蕉视频在线观看黄| 日韩欧美一区免费| 国产精品久久久久久久久久ktv | 91免费视频大全| 国产91视频一区| 91精品国产色综合久久不卡粉嫩| 亚洲美女视频网| 日韩三级视频在线| 国产成人在线影院| 欧美 国产 精品| 国产精品99久久久久久董美香 | 99久久精品免费看国产四区| 麻豆tv入口在线看| 欧美日韩在线观看一区二区| av电影在线不卡| 久久香蕉精品| 欧美在线日韩精品| 中文字幕这里只有精品| 亚洲精品不卡在线| 日韩精品一区二区三| 粉嫩高潮美女一区二区三区| 国产女人18毛片| 成人免费观看49www在线观看| 色偷偷噜噜噜亚洲男人| 中文字幕一区二区三区波野结 | 日韩一区二区三区高清| 日韩成人av电影| 亚洲欧美在线磁力| 日日夜夜狠狠操| 国产女同互慰高潮91漫画| 男女视频一区二区三区| 欧美色婷婷久久99精品红桃| 国产精品美乳在线观看| 午夜视频成人| 91精品中文字幕一区二区三区| 永久免费看黄网站| 成人亚洲精品久久久久软件| 欧美久久久久久久久久久久久 | 亚洲国产精品久久久久久女王| 亚洲mmav| 日韩中文字幕网址| 精品国产九九九| 欧美日韩国产一区在线| 97超碰在线资源| 蜜桃视频在线一区| 免费看av软件| 果冻天美麻豆一区二区国产| 青青草原一区二区| 三区四区电影在线观看| 日韩一区二区三区免费看 | 91精品视频大全| 日韩av官网| 亚洲区中文字幕| 91极品身材尤物theporn| 亚洲综合免费观看高清完整版| 欧美大喷水吹潮合集在线观看| 日韩在线播放一区二区| 成年人黄色在线观看| 美女视频免费精品| 国产区精品视频| 丁香花在线高清完整版视频| 国产亚洲激情在线| www.xxxx国产| 色欲综合视频天天天| 日韩a级片在线观看| 26uuu精品一区二区三区四区在线| 亚欧激情乱码久久久久久久久| 黑丝一区二区| 亚洲丰满在线| 国内自拍欧美| 91久久精品在线| 中文字幕在线直播| 久久国产天堂福利天堂| 你懂的免费在线观看视频网站| 欧美精品久久一区| 国产高潮久久久| 亚洲精品国产一区二区精华液| 欧洲美一区二区三区亚洲 | 高清免费日韩| 素人啪啪色综合| 亚州精品天堂中文字幕| 久久久久久国产精品免费无遮挡 | www日韩av| 123成人网| 2019亚洲日韩新视频| 黄视频网站在线| 亚洲三级av在线| 黄色片一区二区| 欧美丰满美乳xxx高潮www| 亚洲综合久久网| 亚洲成人免费在线| 欧美日韩亚洲国产另类| 国产精品传媒入口麻豆| 无码一区二区三区在线| av在线不卡免费看| 深夜视频在线观看| 国内精品伊人久久久久av影院| 国产高清精品在线观看| 女人色偷偷aa久久天堂| 亚洲人成网站在线播放2019| 天堂日韩电影| 久久99精品久久久久久水蜜桃| 欧洲精品99毛片免费高清观看 | 国产伦理一区二区| 欧美性色综合网| 一级黄色大片视频| 精品免费在线观看| 欧美日韩激情在线观看| 亚洲欧美精品午睡沙发| 国产免费美女视频| 日韩一区在线看| 快灬快灬一下爽蜜桃在线观看| 久久一区二区三区四区| 粉嫩av懂色av蜜臀av分享| 成人18视频日本| 99riav国产精品视频| 国产福利一区二区| 成人在线短视频| 国产大陆a不卡| 韩国三级与黑人| 国产成人av一区二区三区在线| 中国老熟女重囗味hdxx| 国产成人综合在线播放| 久久精品无码专区| 国产+成+人+亚洲欧洲自线| 精品人妻人人做人人爽夜夜爽| 国产一区二区日韩精品| 天堂网成人在线| 国产不卡在线一区| 岛国精品资源网站| 91视视频在线观看入口直接观看www | 国产91富婆露脸刺激对白| 99国产精品免费视频| 高清shemale亚洲人妖| 少妇激情一区二区三区视频| www.66久久| 亚洲精品国产91| 国产精品国产三级国产aⅴ无密码| 午夜激情福利网| 亚洲成av人片| 中文字幕精品无码一区二区| 欧美怡红院视频| 国产精品无码久久av| 欧美成人a∨高清免费观看| 手机在线观看毛片| 亚洲人成电影网站色www| 婷婷在线视频观看| 欧美人交a欧美精品| 狠狠躁少妇一区二区三区| 国产精品福利网| 国产一区二区在线观| 国产精品夜夜夜一区二区三区尤| 要久久电视剧全集免费| 一本一道久久a久久综合精品| 欧美99在线视频观看| 国产视频九色蝌蚪| 奇米影视7777精品一区二区| ass极品水嫩小美女ass| www久久精品| 在线免费观看亚洲视频| 色综合天天狠狠| 99热这里精品| 亚洲人成伊人成综合网久久久| 蜜芽在线免费观看| 高清在线视频日韩欧美| 成人全视频免费观看在线看| 国产精品一 二 三| 99精品在线| 99色精品视频| 国产一区二区三区美女| 青青草福利视频| 一级精品视频在线观看宜春院| 亚洲综合久久网| 精品久久久久99| 幼a在线观看| 日本成人免费在线| 在线观看视频一区二区三区| 色大师av一区二区三区| 亚洲福利电影| 欧美激情第四页| 日本一二三不卡| 国产精品老女人| 欧美一区二区三区不卡| av基地在线| 日韩av片永久免费网站| 51精品国产| 日韩人妻精品一区二区三区| 日韩专区一卡二卡| 国产一级伦理片| 一区二区三区四区乱视频| 五月激情丁香网| 国产视频丨精品|在线观看| 青春草视频在线观看| 成人久久久久久久| 菠萝蜜一区二区| 茄子视频成人免费观看| 成人av手机在线观看| 麻豆疯狂做受xxxx高潮视频| 欧美日韩国产高清一区二区| 国产二区视频在线观看| 日本一区二区三区四区视频| 精品精品国产毛片在线看| 国产精品免费看久久久无码| 韩国一区二区视频| 青青操在线播放| 欧美日韩免费不卡视频一区二区三区| 九色在线免费| 日韩av理论片| 无码少妇一区二区三区| www国产精品内射老熟女| 成人免费毛片嘿嘿连载视频| 久久综合色综合| 精品少妇一区二区三区在线播放 | 激情福利在线| 538国产精品一区二区在线 | 亚洲欧美日本国产有色| 奇米影视在线99精品| 日本精品久久久久中文| 精品视频一区二区不卡| 日本中文字幕电影在线免费观看 | www.xxx亚洲| 日本一区二区在线不卡| 毛片在线免费播放| 最近日韩中文字幕中文| 在线观看亚洲精品福利片| youjizz.com亚洲| 国产精品1区2区| 日本熟伦人妇xxxx| 日韩va亚洲va欧洲va国产| 看黄在线观看| 欧美一区国产一区| 麻豆精品国产91久久久久久| 日韩精品一区二区三区在线视频| 91麻豆精品国产91久久久使用方法| 国产精品剧情一区二区在线观看| 亚洲一区二区在线播放| 黄色欧美日韩| 中文字幕5566| 欧美日韩mp4| 欧美日韩经典丝袜| 久久久久国产精品视频| 日韩av一二三| 国产美女福利视频| 亚洲成人精品视频| 日本一区二区电影| 在线电影看在线一区二区三区| 国产一区二区91| 97超碰人人干| 在线观看国产精品91| 精品午夜av| 欧美日韩亚洲一| 中文字幕制服丝袜成人av| 免费看黄色一级视频| 国产97色在线| 欧美精品国产一区| 爱爱免费小视频| 欧美一区二区二区| 中文不卡1区2区3区| 亚洲综合网中心| 成人福利视频网站| 在线免费看91| 久久久视频精品| 日韩精品影视| 精品中文字幕在线播放| 欧美色精品在线视频| 丰乳肥臀在线| 国产又爽又黄ai换脸| 91欧美一区二区| 99热这里只有精品3| 国产成人亚洲综合91| 伊人久久婷婷| 欧美特黄一级片| 亚洲四色影视在线观看| 视频一区日韩| www.久久91| 欧美日韩一区二区三区| 午夜伦理在线视频| 色综合视频二区偷拍在线| av电影在线观看完整版一区二区 |