国产精品青草久-国产精品情侣愉拍-国产精品区网红主-国产精品区一区二-国产精品热久久-国产精品热热热-国产精品人aⅴ-国产精品人成在线-国产精品人妻人伦-国产精品人人

金喜正规买球

javascript打造跨瀏覽器事件處理機(jī)制

轉(zhuǎn)帖|其它|編輯:郝浩|2010-07-16 09:58:19.000|閱讀 660 次

概述:由于瀏覽器兼容的復(fù)雜性.打造一個(gè)較優(yōu)的跨瀏覽器事件處理函數(shù).不是件容易的事情.各大類庫也都通過了種種方案去抽象一個(gè)龐大的事件機(jī)制.使用類庫可以比較容易的解決兼容性問題.但這背后的機(jī)理又是如何呢? 下面我們就一點(diǎn)點(diǎn)鋪開來講.

# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>

  由于瀏覽器兼容的復(fù)雜性.打造一個(gè)較優(yōu)的跨瀏覽器事件處理函數(shù).不是件容易的事情.各大類庫也都通過了種種方案去抽象一個(gè)龐大的事件機(jī)制.

  使用類庫可以比較容易的解決兼容性問題.但這背后的機(jī)理又是如何呢? 下面我們就一點(diǎn)點(diǎn)鋪開來講.

  首先,DOM Level2為事件處理定義了兩個(gè)函數(shù)addEventListener和removeEventListener, 這兩個(gè)函數(shù)都來自于EventTarget接口. 

  element.addEventListener(eventName, listener, useCapture);
   element.removeEventListener(eventName, listener, useCapture);

  EventTarget接口通常實(shí)現(xiàn)自Node或Window接口.也就是所謂的DOM元素.

  那么比如window也就可以通過addEventListener來添加監(jiān)聽.

  function loadHandler() {
  console.log('the page is loaded!');
  }
   window.addEventListener('load',  loadHandler, false);

  移除監(jiān)聽通過removeEventListener同樣很容易做到, 只要注意移除的句柄和添加的句柄引用自一個(gè)函數(shù)就可以了.

  window.removeEventListener('load',  loadHandler, false);

  如果我們活在完美世界.那么估計(jì)事件函數(shù)就此結(jié)束了. 

  但情況并非如此.由于IE獨(dú)樹一幟.通過MSDHTML DOM定義了attachEvent和detachEvent兩個(gè)函數(shù)取代了addEventListener和removeEventListener.

  恰恰函數(shù)間又存在著很多的差異性,使整個(gè)事件機(jī)制變得異常復(fù)雜. 

  所以我們要做的事情其實(shí)就轉(zhuǎn)移成了.處理IE瀏覽器和w3c標(biāo)準(zhǔn)之間對于事件處理的差異性.

  在IE下添加監(jiān)聽和移除監(jiān)聽可以這樣寫

  function loadHandler() {
  alert('the page is loaded!');
  }
  window.attachEvent('onload',  loadHandler); // 添加監(jiān)聽
   window.detachEvent('onload',  loadHandler); // 移除監(jiān)聽

  從表象看來,我們可以看出IE與w3c的兩處差異:

  1. 事件前面多了個(gè)"on"前綴. 

  2. 去除了useCapture第三個(gè)參數(shù). 

  其實(shí)真正的差異遠(yuǎn)遠(yuǎn)不止這些.等我們后面會繼續(xù)分析.那么對于現(xiàn)在這兩處差異我們很容易就可以抽象出一個(gè)公用的函數(shù)

  function addListener(element, eventName, handler) {
  if (element.addEventListener) {
  element.addEventListener(eventName, handler, false);
  }
  else if (element.attachEvent) {
  element.attachEvent('on' + eventName, handler);
  }
  else {
  element['on' + eventName] = handler;
  }
  }
  function removeListener(element, eventName, handler) {
  if (element.addEventListener) {
  element.removeEventListener(eventName, handler, false);
  }
  else if (element.detachEvent) {
  element.detachEvent('on' + eventName, handler);
  }
  else {
  element['on' + eventName] = null;
  }
  }

  上面函數(shù)有兩處需要注意一下就是:

  1. 第一個(gè)分支最好先測定w3c標(biāo)準(zhǔn). 因?yàn)镮E也漸漸向標(biāo)準(zhǔn)靠近. 第二個(gè)分支監(jiān)測IE.

  2. 第三個(gè)分支是留給既不支持(add/remove)EventListener也不支持(attach/detach)Event的瀏覽器. 

  性能優(yōu)化 

  對于上面的函數(shù)我們是運(yùn)用"運(yùn)行時(shí)"監(jiān)測的.也就是每次綁定事件都需要進(jìn)行分支監(jiān)測.我們可以將其改為"運(yùn)行前"就確定兼容函數(shù).而不需要每次監(jiān)測. 

  這樣我們就需要用一個(gè)DOM元素提前進(jìn)行探測. 這里我們選用了document.documentElement. 為什么不用document.body呢? 因?yàn)閐ocument.documentElement在document沒有ready的時(shí)候就已經(jīng)存在. 而document.body沒ready前是不存在的.

  這樣函數(shù)就優(yōu)化成

  var addListener, removeListener,
  /* test element */
  docEl = document.documentElement;
  // addListener
  if (docEl.addEventListener) {
  /* if `addEventListener` exists on test element, define function to use `addEventListener` */
  addListener = function (element, eventName, handler) {
  element.addEventListener(eventName, handler, false);
  };
  }
  else if (docEl.attachEvent) {
  /* if `attachEvent` exists on test element, define function to use `attachEvent` */
  addListener = function (element, eventName, handler) {
  element.attachEvent('on' + eventName, handler);
  };
  }
  else {
  /* if neither methods exists on test element, define function to fallback strategy */
  addListener = function (element, eventName, handler) {
  element['on' + eventName] = handler;
  };
  }
  // removeListener
  if (docEl.removeEventListener) {
  removeListener = function (element, eventName, handler) {
  element.removeEventListener(eventName, handler, false);
  };
  }
  else if (docEl.detachEvent) {
  removeListener = function (element, eventName, handler) {
  element.detachEvent('on' + eventName, handler);
  };
  }
  else {
  removeListener = function (element, eventName, handler) {
  element['on' + eventName] = null;
  };
  }

  這樣就避免了每次綁定都需要判斷. 

  值得一提的是.上面的代碼其實(shí)也是有兩處硬傷. 除了代碼量增多外, 還有一點(diǎn)就是使用了硬性編碼推測.上面代碼我們基本的意思就是斷定.如果document.documentElement具備了add/remove方法.那么element就一定具備(雖然大多數(shù)情況如此).但這顯然是不夠安全.

  不安全的檢測 

  下面兩個(gè)例子說明.在某些情況下這種檢測不是足夠安全的. 

  // In Internet Explorer
  var xhr = new ActiveXObject('Microsoft.XMLHTTP');
  if (xhr.open) { } // Error

  var element = document.createElement('p');
  if (element.offsetParent) { } // Error

  如: 在IE7下 typeof xhr.open === 'unknown'. 詳細(xì)可參考feature-detection

  所以我們提倡的檢測方式是

  var isHostMethod = function (object, methodName) {
  var t = typeof object[methodName];
  return ((t === 'function' || t === 'object') && !!object[methodName]) || t === 'unknown';
  };

  這樣我們上面的優(yōu)化函數(shù).再次改進(jìn)成這樣

  var addListener, docEl = document.documentElement; 
  if (isHostMethod(docEl, 'addEventListener')) {
  /* ... */
  }
  else if (isHostMethod(docEl, 'attachEvent')) {
  /* ... */
  }
  else {
  /* ... */
  }

  丟失的this指針 

  this指針的處理.IE與w3c又出現(xiàn)了差異.在w3c下函數(shù)的指針是指向綁定該句柄的DOM元素. 而IE下卻總是指向window.

  // IE
  document.body.attachEvent('onclick', function () {
  alert(this === window); // true
  alert(this === document.body); // false
  });
  // W3C
  document.body.addEventListener('onclick', function () {
  alert(this === window); // false
  alert(this === document.body); // true
  });

  這個(gè)問題修正起來也不算麻煩

  if (isHostMethod(docEl, 'addEventListener')) {
  /* ... */
  }
  else if (isHostMethod(docEl, 'attachEvent')) {
  addListener = function (element, eventName, handler) {
  element.attachEvent('on' + eventName, function () {
  handler.call(element, window.event);
  });
  };
  }
  else {
  /* ... */
  }

  我們只需要用一個(gè)包裝函數(shù).然后在內(nèi)部將handler用call重新修正指針.其實(shí)大伙應(yīng)該也看出了,這里還偷偷的修正了一個(gè)問題就是.IE下 event不是通過第一個(gè)函數(shù)傳遞,而是遺留在全局.所以我們經(jīng)常會寫event = event || window.event這樣的代碼. 這里也一并做了修正. 

  修正了這幾個(gè)主要的問題.我們這個(gè)函數(shù)看起來似乎健壯了很多.我們可以暫停一下做下簡單的測試, 測試三點(diǎn)

  1. 各瀏覽器兼容                

     2. this指針指向兼容                

     3. event參數(shù)傳遞兼容. 

  點(diǎn)擊測試文本

  測試代碼如下:

  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <html xmlns="//www.w3.org/1999/xhtml">
  <head>
  <title> Event Test UseCase </title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
  <div id="odiv" style="width:200px;height:100px;background-color:red; text-align:center">測試文本</div>
  </body>
  <script>
  var isHostMethod = function (object, methodName) {
  var t = typeof object[methodName];
  return ((t === 'function' || t === 'object') && !!object[methodName]) || t === 'unknown';
  };
  var addListener, removeListener,
  /* test element */
  docEl = document.documentElement;
  if (isHostMethod(docEl, 'addEventListener')) {
  addListener = function (element, eventName, handler) {
  element.addEventListener(eventName, handler, false);
  };
  }
  else if (isHostMethod(docEl, 'attachEvent')) {
  addListener = function (element, eventName, handler) {
  element.attachEvent('on' + eventName, function () {
  handler.call(element, window.event);
  });
  };
  }
  else {
  addListener = function (element, eventName, handler) {
  element['on' + eventName] = handler;
  };
  }
  if (isHostMethod(docEl, 'removeEventListener')) {
  removeListener = function (element, eventName, handler) {
  element.removeEventListener(eventName, handler, false);
  };
  }
  else if (isHostMethod(docEl, 'detachEvent')) {
  removeListener = function (element, eventName, handler) {
  element.detachEvent('on' + eventName, handler);
  };
  }
  else {
  removeListener = function (element, eventName, handler) {
  element['on' + eventName] = null;
  };
  }

  // Test UseCase
  var o = document.getElementById('odiv');
  addListener(o, 'click', function(event) {
  this.style.backgroundColor = 'blue';
  alert((event.target || event.srcElement).innerHTML);
  });
  </script>
  </html>

  我們只需這樣調(diào)用方法:

  addListener(o, 'click', function(event) {
  this.style.backgroundColor = 'blue';
  alert((event.target || event.srcElement).innerHTML);
  });

  可見'click' , this, event 都做到了瀏覽器一致性. 這樣是不是我們就萬事大吉了?

  其實(shí)這只是萬里長征的第一步.由于IE瀏覽器下和諧的內(nèi)存泄露,使我們的事件機(jī)制要考慮的比上面復(fù)雜的多.

  看下我們上面的一處修正this指針的代碼

  element.attachEvent('on' + eventName, function () {
  handler.call(element, window.event);
  });

   element --> handler --> element 很容易的形成了個(gè)循環(huán)引用. 在IE下就內(nèi)存泄露了.

  解除循環(huán)引用 

  解決內(nèi)存泄露的方法就是切斷循環(huán)引用. 也就是將handler --> element這段引用給切斷. 很容易想到的方法,也是至今還有很多類庫在使用的方法.就是在window窗體unload的時(shí)候?qū)⑺衕andler指向null .

  基本代碼如下

  function wrapHandler(element, handler) {
  return function (e) {
  return handler.call(element, e || window.event);
  };
  }

  function createListener(element, eventName, handler) {
  return {
  element: element,
  eventName: eventName,
  handler: wrapHandler(element, handler)
  };
  }

  function cleanupListeners() {
  for (var i = listenersToCleanup.length; i--; ) {
  var listener = listenersToCleanup[i];
  litener.element.detachEvent(listener.eventName, listener.handler);
  listenersToCleanup[i] = null;
  }
  window.detachEvent('onunload', cleanupListeners);
  }

  var listenersToCleanup = [ ];

  if (isHostMethod(docEl, 'addEventListener')) {
  /* ... */
  }
  else if (isHostMethod(docEl, 'attachEvent')) {
  addListener = function (element, eventName, handler) {
  var listener = createListener(element, eventName, handler);
  element.attachEvent('on' + eventName, listener.handler);
  listenersToCleanup.push(listener);
  };
  window.attachEvent('onunload', cleanupListeners);
  }
  else {
  /* ... */
  }

  也就是將listener用數(shù)組保存起來.在window.unload的時(shí)候循環(huán)一次全部指向?yàn)閚ull.從此切斷引用. 

  這看起來是個(gè)很不錯(cuò)的方法.很好的解決了內(nèi)存泄露問題.

  避免內(nèi)存泄露 

  在我們剛剛要松口氣的時(shí)候.又一個(gè)令人咂舌的事情發(fā)生了.bfcache這個(gè)被大多主流瀏覽器實(shí)現(xiàn)的頁面緩存機(jī)制.介紹上赫然寫了幾條會導(dǎo)致緩存失效的幾個(gè)條款

  the page uses an unload or beforeunload handler

  the page sets "cache-control: no-store"

  the page sets "cache-control: no-cache" and the site is HTTPS.

  the page is not completely loaded when the user navigates away from it

  the top-level page contains frames that are not cacheable

  the page is in a frame and the user loads a new page within that frame (in this case, when the user navigates away from the page, the content that was last loaded into the frames is what is cached)

  第一條就是說我們偉大的unload會殺掉頁面緩存.頁面緩存的作用就是.我們每次點(diǎn)前進(jìn)后退按鈕都會從緩存讀取而不需每次都去請求服務(wù)器.這樣一來就矛盾了...

  我們既想要頁面緩存.但又得切斷內(nèi)存泄露的循環(huán)引用.但卻又不能使用unload事件...

  最后只能使用終極方案.就是禁止循環(huán)引用 

  這個(gè)方案仔細(xì)介紹起來也很麻煩.但如果見過DE大神最早的事件函數(shù).應(yīng)該理解起來就不難了. 總結(jié)起來需要做以下工作.

  1. 為每個(gè)element指定一個(gè)唯一的uniqueID.

  2. 用一個(gè)獨(dú)立的函數(shù)來創(chuàng)建監(jiān)聽. 但這個(gè)函數(shù)不直接引用element, 避免循環(huán)引用.

  3. 創(chuàng)建的監(jiān)聽與獨(dú)立的uid和eventName相結(jié)合

  4. 通過attachEvent去觸發(fā)包裝的事件句柄.

  經(jīng)過上面的一系列分析.我們得到了最終的這個(gè)相對最完美的事件函數(shù)

  (function(global) {
  // 判斷是否具有宿主屬性
  function areHostMethods(object) {
  var methodNames = Array.prototype.slice.call(arguments, 1),
  t, i, len = methodNames.length;
  for (i = 0; i < len; i++) {
  t = typeof object[methodNames[i]];
  if (!(/^(?:function|object|unknown)$/).test(t)) return false; 
  }
  return true;
  }
  // 獲取唯一ID
  var getUniqueId = (function() {
  if (typeof document.documentElement.uniqueID !== 'undefined') {
  return function(element) {
  return element.uniqueID;
  };
  } 
  var uid = 0;
  return function(element) {
  return element.__uniqueID || (element.__uniqueID = 'uniqueID__' + uid++);
  };
  })();
  // 獲取/設(shè)置元素標(biāo)志
  var getElement, setElement;
  (function() {
  var elements = {};
  getElement = function(uid) {
  return elements[uid];
  };
  setElement = function(uid, element) {
  elements[uid] = element;
  };
  })();
  // 獨(dú)立創(chuàng)建監(jiān)聽
  function createListener(uid, handler) {
  return {
  handler: handler,
  wrappedHandler: createWrappedHandler(uid, handler)
  };
  }
  // 事件句柄包裝函數(shù)
  function createWrappedHandler(uid, handler) {
  return function(e) {
  handler.call(getElement(uid), e || window.event);
  };
  }
  // 分發(fā)事件
  function createDispatcher(uid, eventName) {
  return function(e) {
  if (handlers[uid] && handlers[uid][eventName]) {
  var handlersForEvent = handlers[uid][eventName];
  for (var i = 0, len = handlersForEvent.length; i < len; i++) {
  handlersForEvent[i].call(this, e || window.event);
  }
  } 
  }
  }
  // 主函數(shù)體
  var addListener, removeListener,
  shouldUseAddListenerRemoveListener = (
  areHostMethods(document.documentElement, 'addEventListener', 'removeEventListener') &&
  areHostMethods(window, 'addEventListener', 'removeEventListener')),
  shouldUseAttachEventDetachEvent = (
  areHostMethods(document.documentElement, 'attachEvent', 'detachEvent') &&
  areHostMethods(window, 'attachEvent', 'detachEvent')),
  // IE branch
  listeners = {},
  // DOM L0 branch
  handlers = {};

  if (shouldUseAddListenerRemoveListener) {
  addListener = function(element, eventName, handler) {
  element.addEventListener(eventName, handler, false);
  };
  removeListener = function(element, eventName, handler) {
  element.removeEventListener(eventName, handler, false);
  };
  } 
  else if (shouldUseAttachEventDetachEvent) {
  addListener = function(element, eventName, handler) {
  var uid = getUniqueId(element);
  setElement(uid, element);
  if (!listeners[uid]) {
  listeners[uid] = {};
  } 
  if (!listeners[uid][eventName]) {
  listeners[uid][eventName] = [];
  } 
  var listener = createListener(uid, handler);
  listeners[uid][eventName].push(listener);
  element.attachEvent('on' + eventName, listener.wrappedHandler);
  };
  removeListener = function(element, eventName, handler) {
  var uid = getUniqueId(element), listener;
  if (listeners[uid] && listeners[uid][eventName]) {
  for (var i = 0, len = listeners[uid][eventName].length; i < len; i++) {
  listener = listeners[uid][eventName][i];
  if (listener && listener.handler === handler) {
  element.detachEvent('on' + eventName, listener.wrappedHandler);
  listeners[uid][eventName][i] = null;
  } 
  }
  } 
  };
  }
  else {
  addListener = function(element, eventName, handler) {
  var uid = getUniqueId(element);
  if (!handlers[uid]) {
  handlers[uid] = {}; 
  } 
  if (!handlers[uid][eventName]) {
  handlers[uid][eventName] = [];
  var existingHandler = element['on' + eventName];
  if (existingHandler) {
  handlers[uid][eventName].push(existingHandler);
  }
  element['on' + eventName] = createDispatcher(uid, eventName);
  } 
  handlers[uid][eventName].push(handler);
  };
  removeListener = function(element, eventName, handler) {
  var uid = getUniqueId(element);
  if (handlers[uid] && handlers[uid][eventName]) {
  var handlersForEvent = handlers[uid][eventName];
  for (var i = 0, len = handlersForEvent.length; i < len; i++) {
  if (handlersForEvent[i] === handler){
  handlersForEvent.splice(i, 1);
  } 
  }
  } 
  };
  }
  global.addListener = addListener;
  global.removeListener = removeListener;
  })(this); 

  至此.我們的整個(gè)事件函數(shù)算是發(fā)展到了比較完美的地步.但總歸還是有我們沒照顧到的地方.只能驚嘆IE和w3c對于事件的處理相差太大了.

  遺漏的細(xì)節(jié) 

  盡管我們洋洋灑灑的上百行代碼修正了一個(gè)兼容的事件機(jī)制.但仍然有需要完善的地方.

  1. 由于MSHTML DOM不支持事件機(jī)制不支持捕獲階段.所以第三個(gè)參數(shù)就讓他缺失去吧.

  2. 事件句柄觸發(fā)順序.大多數(shù)瀏覽器都是FIFO(先進(jìn)先出).而IE偏偏就要來個(gè)LIFO(后進(jìn)先出).其實(shí)DOM3草案已經(jīng)說明了specifies the order as FIFO.


標(biāo)簽:

本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn

文章轉(zhuǎn)載自:網(wǎng)絡(luò)轉(zhuǎn)載

為你推薦

  • 推薦視頻
  • 推薦活動
  • 推薦產(chǎn)品
  • 推薦文章
  • 慧都慧問
掃碼咨詢


添加微信 立即咨詢

電話咨詢

客服熱線
023-68661681

TOP
91视频网站 | 亚洲国产中文在线二区三区免 | 日本极度另类网站 | 亚洲暴爽av天天爽日日碰 | 成年女人免费v片 | 91在线无精精品秘?入口九色 | 国产亚洲视频在线观看 | 亚洲日韩av无码不卡一区二区三区 | 国产精品91福利一区二区三区 | 欧美日韩一区二区三区四 | 亚洲av永久无码精品网站色欲 | 国产网站在线看 | 91精品秘密秘在线观看 | 精品偷自拍另类在线观看 | 国内大量揄拍人妻精品視頻 | 日韩av在线免费观看 | 91人妻人人澡人人爽人人精品 | 香蕉视频在线播放91国产免费 | 亚洲美女作| 在线亚洲人成电影网站色www | 国产爆乳美女娇喘呻 | 办公室秘书无码激情av | 在线亚洲精品福利网址导航 | 国产另类专 | 亚洲91综合狠狠 | 亚洲第一aⅴ天堂在线观看 亚洲第一av | 日韩精品一区二区三区观看 | 精品久久久久久中文字幕人妻最新 | 丰满少妇又爽又紧又丰满在线观看 | 在线看片免费人成视频 | 中文精品免费视频 | 国产精品高潮呻吟久久v | 国内精品九九久久精品 | 国语精品自产拍在线 | 人妖欧美一区二区三区四区 | 国产强奷在线播放免 | 香蕉视频91免费 | 97超碰在线免费观看 | 91精品最新国内在线播放 | 日韩av高清区二区三区 | 91精品国产闺蜜国产 | 亚洲五月六月丁香激情综合 | 97精品国产高清自在线 | 99精品欧美一区二区三区 | 欧美乱子伦一 | 国产国语特级三级a毛片 | 婷婷激情久久丁香综合伊人 | 究竟是人性的扭曲还是道德的沦丧 | 99久热这里有精品免费 | 国产欧美精品久久三级 | 国产大片在线免费网站 | 97久久精品一区二区三区剧情介绍 | 蜜臀久久99精品久久久久久 | 精品国产一区二区三区四区97 | 国产成人极品尤物av | 极品无码av国 | 欧美成人精品第一区首页 | 97精品人妻无码专区在线视频 | 少妇无码v无码专区 | 国产一区二区三区福利姬在线观看 | 日韩人妻精品一区二区三区视频 | 欧美亚洲人成网站在线观看 | 午夜不卡久久精品无码免费 | 亚洲av午夜福利精品一区 | 国产一区二区精品久久呦 | 欧洲av无码一区二区三区 | 日韩免费一级毛片在线观看 | 亚洲av极品无码专区在线观看 | 97久久久人妻一区精品 | 国产清纯美女白浆在线播放 | 人妻中文字幕无码老熟妇 | 区二区久久国产 | 国产熟睡乱子伦视频网站 | 国产中文字幕乱人伦在线观看 | 欧美一级高清片国产特黄大片 | 国产一区二区在线无码麻豆 | 亚洲精品一级无码中文字幕 | 日韩a人毛片精品无人区乱码 | av免费无码在线观 | 国产精品综合第一页 | 中文字幕有码在线观看 | 精品亚洲 | 欧美成人免费大片 | 国产精品自在线拍国产第一页 | 国产精品毛片 | 99精品欧美一区二区三区 | 国产免费mv大片人人电影播 | 国产精品视频一区 | 国产成人三级视频在线观看播放 | 国产韩国精品一区二区三区久久 | 欧美人牲口杂交在 | 国产午夜视频高清 | 超级碰97直线国产免费公开 | 欧美精品一区二区三区91 | 狠狠热精品免费视频 | 99久久免费只有精品国产免费视频 | 亚洲av无码av制服另类专区 | 国产精华液一线二线三线 | 精品高清无码无遮挡网视频 | 91在线无码精品秘入口九 | 亚洲影院丰满少妇中文字幕无码 | 精品久久久久久久久久中文字幕 | 亚洲aaaa级特黄毛片发布 | 国产精品手机在线 | 国产香蕉97碰碰久久人人蜜桃 | 国产乱人伦精品一区二区在线观 | 欧美成人精品视频在线观看 | 亚洲熟女av一区二区三区 | 国产乱码久久久网站 | 国产天堂在线丝袜一区 | 成人爽a毛片一区二区免 | 中文字幕伦伦在线 | 日韩人妻精品一区二区三区视频 | 国产精品va尤物在线观看性色 | a品人v在线播放 | 国产做无码视频在线观 | 自拍偷自拍亚洲精品被多人伦好爽 | 国产日韩欧美一区 | 无码人妻精品一区二区三区9厂 | 国产清纯美女白浆在线播放 | 91精产国品一二三产区粉粉 | 欧美aaaaaa级午夜福利视频 | 九九在线中文字幕无码 | 91人人摸人人爽人人爱 | 日本xxxx裸体xxxx | 国产成人无码a区在线观看视频不卡 | 日本香蕉一区二区在线观看 | 91极品尤物18禁国产在线播放 | 久操综合 | 亚洲av鲁丝片一区二区三区 | 国产99视频精品免费视看9 | 精品久久久中文字幕二区 | 91桃色国产线观看免费 | 人妻斩无码正片免费视频 | 亚洲av无码久久精品蜜桃播放 | 亚洲爆乳无码专区 | 国产à爽一区二区久久久 | 日本波多野结衣久久久久 | 91精品久久久久久久久久小网站 | 日韩av片无码一区二区三区不卡 | 无码区国产 | 午夜不卡影院 | 国产精品电影久 | 97精品伊人久久久大 | 亚洲av片无码久久尤物 | 一区二区三 | 国产精品嫩草 | 99香蕉国| 天天日偷偷干天天操天天 | 97人妻人人做人碰人人爽 | 久久r视频免精品在 | 精品午夜福利日 | 久久999国产免费 | 国产伦人人人人人人性 | 91精品国产综合久久久蜜臀 | 国产一线二线在线观看成人av | 99久久er热在这里只有精品16 | 日本xxxx裸体xxxx免费 | 日本免费中文字幕 | 国产乱码精品一区二区三区四川人 | 亚洲av无码成人精品区在线观看 | 国产无码高清在线观看 | 成人拍拍拍免费视频网站 | 国产ⅴ片在线播放免费无码 | 国产呦精品一区二区三区 | 亚洲精品香蕉视频播放 | 对白精彩久久老熟妇女 | 国产精选91原创视频 | 成全全集高清在 | 欧美级在线现免费观看不卡 | 无码视频字幕 | 无码中文字幕人妻在线一区二区三区 | 日韩精品一区中文字幕在线 | 91电影在线观看 | 国产精品黄大片在线播放 | 97涩涩| 欧美日韩在线一区乱码视频 | 国产亚洲精品成 | 无码视频一区二区三区在线观看 | 亚洲av久久无码精品九九 | 97人妻人人揉人人躁原 | 99热这里有 | 在线观看亚洲av无码每日更新 | 国内精品久久久 | 操一操亚洲人妖高清av | 欧美日韩在线播放 | 欧美日韩在线第一页免费观看 | 精品国产欧美一区二区三区不卡 | 午夜爽爽爽男女免费观看影院 | va亚洲v专区在线 | 91精品国产aⅴ一区二区 | 国产综合久久7 | 少妇三级 | 国产精品自拍视频合集 | 丰满人妻熟妇乱又伦精品视频三 | 国产福利在线观看麻豆 | 久久电影网午夜鲁丝片免费 | 久久不见久久见免费影院www | 国产成人麻豆精品午夜福利在 | 国产亚洲av片在线观看 | 日韩欧美国产传媒第一区二区 | 国产成人精品午夜福利 | 老熟妇真实网站 | av超燃电影先生免费观看影视大全 | 亚洲午夜理论片在线观看 | 午夜视频体内 | 成年人免费| 午夜dv内射一区区 | 欧美日韩一区二区视频免费看 | 亚洲熟妇 | 91精品无码国产在线观看 | 东京无码熟妇人妻av在线网址 | 在线观看国产麻豆 | 欧美成人一区二区三区不卡视频 | 91传媒制片厂网址多少 | 一区二区国产高清视频在线 | 国产天堂亚洲国产碰碰 | 国产熟睡乱子伦视频网站 | 亚洲爆乳无码精品aaa片蜜桃 | 国产精品无码久久久久久曰本 | 国产精品va | 久久99欧| 97se狠狠狠狼鲁亚洲综合网 | 国产乱码精品一区二区三区四川 | 国产精品厕所电影 | 免费无码肉片在 | 人妻无码aⅴ中文字幕视频 人妻无码aⅴ中文字幕系列 | 果冻传媒的女主董小宛 | 久久99久久99精品免视看 | 韩国三级中文字幕hd久久精品 | 无码中字av | 色欲av一区二区三区四区 | 99久久99久久精品国产片果冻 | a在线观看免费网站大全 | 人人爽天96 | 国产爆乳无码av一区二区 | av无码中文字幕无码 | 日韩版码免费福利视频 | 欧美成人欧美va天堂在线电影 | 亚洲最大激情中文字幕 | 亚洲国产日韩综合久久精品 | 日本hs在线播放观看 | 无码国产精品一区二区vr | 国产a国产国产片 | 国产精品视频色拍拍 | 欧美日韩国产免费一区二区三区 | 黄色电影免费看 | 人人看电影网 | а√天堂网ww | 久别的草原电视剧免费观看高清 | 国产精品v欧美精品∨日韩 国产精品v欧美精品v日韩精品 | 国精产品一区二区三区四区糖心 | 国产无遮挡吃奶视频网站 | 无码三级a在线观看 | 亚洲av无码专区国产乱码不卡 | 99久久国产精麻豆 | 久久aaaa片一区二区 | 91久久综合伊人 | av免费看在线观看免费 | 91大神精品在线观看 | 人人超碰91尤物精品国产 | 国产免费一区二区视频 | 成人亚洲一区无码久久 | 国产在线观看入口网站 | 麻豆最新 | 成年站免费网站看v片在线 成欧美亚洲人一区二区三区免费 | 无码乱码av天堂一区二区 | 国产精品久久久久精品综合 | aⅴ中文无码亚洲 | 91se在线看片国产 | 精品人妻人人做人人爽夜夜爽 | 无码中字av福利 | 最新国产中文字幕 | 国产高清乱码一区二区三区 | 亚洲一线精品精品在线观看 | 日韩一区二区三区射精 | 国产精品羞羞无码久久久 | 午夜无码精品国产片 | 亚洲精品无码专区在线播放 | 国产乱子伦视频一区二区三区 | 精品国产免费第一区二区 | 亚洲福利网站 | 人妻少妇精品中文字幕av | 国产精选秘免费进入竹菊影视 | 日韩精品一区二区三区免费视频 | 国产91玩精品秘入口福利 | 国产熟女aa级毛片www | 国产精品免费播放一区二区 | 精品一区二区av天堂 | 精品视频免费在线 | 激情内射亚州一区二区三区爱妻 | 国产一区二区三区乱码在线观看 | 精品久久久久一区二区三区 | 欧美日韩视 | 偷拍厕所美女尿尿视频 | 国产视频91在线视频 | 无码专区一码二码三码 | a∨片亚洲国产男人的天堂 aⅴ片在线观看 | 麻豆精品国产自产在线观看 | 97久久精品亚洲中文字幕无码 | 国产aⅴ天堂亚洲国产av | 亚洲精品午夜久久久伊人 | 午夜精品成人毛片 | 欧洲在线性爱av | 精品久久久久久综合网 | 日韩精品无码免费专区午夜不卡 | 自拍无码国产 | 中文字幕久久精品乱码乱码 | 91欧美激情一区二区三区成人 | 国产蜜臀一区二区三区亚洲 | 国产成人av在线亚洲天堂在线观看 | 国产午夜精品久久久久 | 国产精品亚洲a∨天堂不卡 国产精品亚洲av高清二区 | 精品国产a | 成人羞羞在线观看网站下载 | 日韩国产不卡一区二区三区 | 成人综合高清久久亚洲中文字幕精 | 91精品国产综合久久香蕉 | 亚洲嫩草影院 | 亚洲av无码专区在线播放中文 | 国产精品亚洲色婷婷99久久精品 | 三级无码在线 | 中文字幕亚洲综合久久菠萝蜜 | 国产精品国产三级国产av | 97夜夜澡人人双人人人喊 | 国产在线aaa片一区二区99 | 国产激情一区二区三区四区 | 日韩免费高清大片在线 | 91人妻丝袜美腿一区二区 | 国产精品妇 | 国内久久综合无码精品 | 中文无码在线观看可乐视频 | 爆乳无码系列肉感在线播放 | 亚洲精品黄片 | 欧美人牲口杂交在 | 国产视频亚 | 国产精品免费看久久久8 | 国产精品国产三级国产专不∫ | 欧美交换乱理伦片在 | 精品一区二区久久久久网站 | 日本欧美一区二区三区乱码 | 精品免费久久久久久久 | 麻豆安全网址入口 | 中文字幕精品亚洲无码视频精品 | 日韩区欧美国产区 | 神马午夜福利视频 | 午夜十二点 | 午夜小电影 | 91一区二区三区四区五区 | 欧美人妻制服另类人妻在线 | 日韩成人| 成人黄色大片亚洲 | 中文字幕亚洲乱码高清 | 国产精品国语刺激对白在线观看 | 亚洲国产精品99久久久久久 | 九九九九九在线精品区 | aⅴ中文字幕 | 91熟妇在线视频 | 亚洲熟妇无码在线观看 | 97国产婷婷综合视 | 日本免费人成视频在线观看 | 天天干夜夜爽 | 黄色片在线免费观看 | 果冻传媒一区二区天美传媒 | 91精品国产综合久久麻豆 | 精品国产av无码一 | 亚洲av中出手机版在线观看 | 国产精品美女自在线观看免费 | 91麻豆精品国产一区色欲 | 亚洲国产精品无码第一区 | 无码av中文一二三区 | 99久久综合国产二区高清闺蜜6 | 欧美一区视频在线 | 国产av熟女一区二区三区 | 91自产拍在线观看精品 | 亚洲日韩一区在线观看 | 在线一本到无码av | 欧美在线视频你懂 | 国产日韩综合在线视频 | 中日韩无码水多多影视 | 午夜精品福利电 | www.国产福利 | 欧美高清视频www夜色资源网 | 亚洲第一天堂久久 | 无码精品亚| 国产av一区二区三区无码野战 | 日本免费一区二区三区最新 | 91视频观看 | 99久re热视频这里只有精品 | 欧美视频xxxx | 日韩无码三级 | 无码精品人妻一区二区三区免费 | 99ri在线精品视频在线播放 | 国产白丝无码免费视频 | 97久久久久人妻精品区一 | 日韩国产一区二区在线播放 | 午夜福利理论片 | 国产精品欧美在线另类小说 | 亚洲av无码专区一级婬片毛片 | 日韩欧美国产中文字幕 | 欧美在线观看一区 | 午夜不卡影院 | 99久热re在线精品996热视频 | 国产精品一香蕉国产线看观看 | 婷婷久久综合九色综合97 | 日本成人网在线观看 | 福利视频综合一区二区三区四区 | 午夜福利一区二区三区高清视频 | 日本无码视频精品一区二区 | 国产精品福利一区 | 91制片厂果冻传媒首页 | 日韩在线一区二区 | h漫一区二区三区在线观看 h无码动漫超w网站 h无码动漫在线观看不卡 | 国产精品欧美在线另类小说 | 中文字幕丰 | 国产在线视频八区 | 精品思思久久99热网 | 国产精品美女自在线观看免费 | 国产黄在线观看免费软件下载 | 97亚洲熟妇自偷自 | 国产亚洲av无码av男人的天堂 | 欧美在线观看亚洲免费 | 欧美日韩另类小说自拍 | 91国内在线| 国内精品久久久久久不卡影院 | 亚洲国产精品嫩草影院永久 | 亚洲a无码综合a国产av中文 | 亚洲av无码一区二区三区在线高 | 一区二区三区精品视频 | a片av一级在线播放观看免费 | 99久久国产综合精品女 | 亚洲成av人影院在线观看网 | 99国产精品永 | avtt香蕉久久 | 国产欧美亚洲精品下载第二区 | 91福利国产极品美女在线观看 | 欧美日本综合一区二区三区 | 国产亚洲成aⅴ人片在线观看麻豆 | 精品无码久久久久久尤物 | 国产高清自拍 | 美女扒开裤衩让 | 亚洲精品天堂成人片 | 午夜视频在线观看 | 海角社区视频精品熟妇乱久久久 | 99爱视频在线观看免费播放 | 日韩欧美亚洲一区二区综合 | 毛片a短片12345影视 | 精品无码午夜一区二区三区在 | 亚洲a∨无码男人的天堂 | 国产欧美另类久久久精品91 | 日韩a毛片免费观看 | 亚洲av无码片区一区二区三区 | 日本a一级毛 | 精品亚洲国产专区在线观看 | 日本高清在线播放一区二区三区 | 精品中文字幕一区二区三区四区 | 国产成人午夜福利在线视频 | 国产欧美综合一区二区三区 | 亚洲国产成人在人网站天堂 | 亚洲日韩aa特黄毛片试看 | 91福利国产在线观看香蕉 | 日本精品久久久久久久久免 | 亚洲日产?v中文字幕无码偷拍 | 九九九精品成人免费视频 | 国产v亚洲v天堂a无码 | 亚洲欧美日韩一本无线码专区 | 日韩午夜无码专区 | 精品久久久久久中文字幕一区 | 中文字幕乱人伦高清视频 | 精品国产一区二区三国产 | 亚洲一区二三区好的精华液 | 国产91精品一区二区麻豆亚洲电影 | 国产成人免费97在线 | 久久97超碰色中文字幕蜜芽 | 在线一区二区不卡 | 91md天美精东蜜桃传媒在 | 日本熟妇色xxxxx欧美老妇 | 成人激情五月天 | 国产一区二区视频在线观看 | 国产老妇女牲交视频 | 国产精品99久久免 | 久久99国产乱子伦精品免费 | 日韩一卡二卡三 | 欧美三级私人影院一区二区 | 国产伦精品一区二区三区视频猫咪 | 国产精品一区二区三区在线 | 自拍偷区亚洲综合激情 | 国产精品18久久久久久不卡 | 国产精品国产精 | 操女优国产成人综合色在 | 国产精品一区二区在线观看 | 白浆免费视频国产精品视频 | 中文字幕在线观看高清视频 | 99久久精品一区二区毛片吞精 | 人人片av麻烦 | 日本在线高清版卡免v | 国产美女口爆吞精一区二区 | 国产日韩欧美亚洲综合在线 | 动漫亚洲国产二区精品 | 亚洲精品成av人片天堂无码 | 国语精品91自产拍在 | 亚洲成av人片一区二区密柚 | 亚洲熟妇自偷自拍另类图片站 | 国产精品福利在线无码卡一 | 成全在线观看免费高清电视剧 | 午夜成a人片在线观看 | 午夜理理伦a级毛片天天看 午夜理理伦电影a片无码 | 亚洲毛片在线观看av | 亚洲av一点也不卡一区二区 | 高潮毛片又色又爽免费 | 欧美人与动牲 | 欧美伊人久久大香线蕉 | 91在线无精精品秘一区二区 | 国产全肉乱妇杂乱视频 | 91丝袜精品久久久久久无码人妻 | 国产亚洲3p无码一区 | 卡通动漫日韩无码一区二区三区 | 成人在线免费观看大全 | 三区免费播放 | 在线观看免费av网 | 亚洲aⅴ无码天堂在线观看 亚洲aⅴ无码专区在线观看 | 亚洲国产综合自在线婷婷 | 午夜日本一区二区三区 | 97青草香蕉依人在线视频 | 在线观看av不卡网站永久 | 欧美日韩亚洲综合一区二区三区激 | 欧美成人四级剧情在线播放 | 精品国产无码av91久久精品国产 | 日韩三级在线免费观看 | 国产视频亚| 午夜精品自在自线之la | 国产精品午夜国产小视频 | 国内av网站在线观看 | 在线精品ac国产大全 | 日本一区二区免费在线观看 | 亚洲精品日韩专区 | 精品国产av无码久久久黄 | 中文字幕乱码字幕在线视频 | 亚洲av成人精品日韩在线播放 | 人人揉人人爽五月天视频 | 午夜精品在线影院 | 日韩精品无码一本二本三本色 | 久久高潮| 中文字幕成人精品久久不卡 | 老司机午夜 | 天天干天天拍 | 国产一线二线三线女 | 九月婷婷人人澡人人添人人爽 | 亚洲一级中文字 | 国产91精品高跟丝袜在线 | 国产午夜福利精品集在线观看 | 成人黄色一级毛片久久 | 日韩精品网址 | 亚洲日本va午夜在线影院 | 91极品尤物18禁国产在线播放 | 日韩欧美三级字幕 | 日产a一a区二区 | 亚洲欧美一区二区三区色戒 | 国产精品无码一区二区三区免费 | 亚洲av女人天堂 | 精品一区二区三区四区无码 | 国产av大学生 | 亚洲国产精品无码一区二区 | 亚洲精品久久久久久一区二区 | 亚洲熟妇无码av不卡在线播放 | 国产午夜鲁丝无码拍拍 | 97色伦| 日韩黄片三级在线观看 | 在线无码免费的毛片视频 | 日本经典电影在线观看 | 国产一区二区三区综合网 | 国产亚洲av夜间福利香蕉导航 | 亚洲精品午夜无码专区 | 97se亚洲综合在线 | 无码免费中文字幕视频 | 欧美午夜精品 | 国产一区二区精品久久小说 | 国产成人无码av片在线观看 | 欧美日韩久久久久久精品 | 91传媒在线超清免费在线观看 | 国产高潮视频在线观看 | 国产免费又色又爽又黄软件 | 国产一级国产一级在线观看 | 97久久人妻精品中文无码 | 成人h动漫精品一区二区无码 | 97精品久久久久久久久久久 | 亚洲国产911在线观看 | 国产在线自在拍91 | 国产无套码aⅴ在线观看在 国产无套内射又大又 | 无码中文三级在线观看 | 丰满人妻少妇一区二区三区av | 色狠狠av一区二区三区 | 无人视频免费观看免费视频 | 日本一品道无码免费专区在线观看 | 国产白嫩精品久久久久久 | 91亚洲中文天堂在线播放 | 91久久国产成人免费观看 | 精品日韩一区二区三区 | 亚洲欧美成人 | 丰满的熟妇岳中文字幕 | 91在线播放视频 | 国产成人av乱码在线观看 | 国产一级特黄不卡在线 | 亚洲v无码精品色午夜蜜桃 亚洲v无码专区日韩乱码不卡 | 天天躁狠狠躁狠狠躁夜夜躁 | 午夜久久精品国产 | 亚洲aⅴ优女av综合久久久 | 97久久香蕉国产线看观看 | 苍井空亚洲精品aa片在线播放 | 成人h无码动漫超w网站 | 精品一区二区三区自拍图片区 | 午夜性动态啪影院 | 丰满少妇乱a片无码 | 国产精品白丝喷浆 | 天天视频.综合网 | 中文字幕亚洲天堂 | 国产性色亚洲特级黄片 | 国产无码高清在线观看 | 中文字幕亚洲一区 | 99久久婷婷国产综合精品青草免 | 国产亚洲av网站在线观看 | 久久超乳爆乳中文字幕 | 国产又爽又黄无码无遮 | 中文字幕一区二区三区免费看 | 香蕉视频99| 国产亚洲福利精品一区二区 | 精品www人人爽人人 精品按摩无码 | 日韩成人教师在线观看视频 | 欧美日韩成 | 欧美亚洲国产午夜看片 | 东日韩二三区 | 亚洲国产一区二区三 | 日本一区二区三区中文字幕 | 日韩经典欧美一区二区三区 | 麻豆精品久久久久久中文字幕无 | 国产免费aⅴ大片在线观看 国产免费aⅴ片在线观看麻豆 | 国产v综合v亚洲欧美久久 | 99热国产这里只有精品6 | 91麻豆剧传媒国产传媒高清 | 国产精品高清一区二区三区久久你 | 欧美高清视频www夜色资源网 | 黄色网页大全 | 亚洲成av人无码综合在线 | 黄网站色视频大全免费看 | 无码人妻精品中文字幕免费东京热 | 亚洲精品亚洲人成 | 日本熟妇色一本在线观看 | 亚洲精品高清国产一线久久 | 动漫美女的巨乳被揉胸 | 97久久人妻精品中文无码 | 欧美熟妇另类久久久久久久 | 色婷婷六月亚洲综合香蕉 | 一区二区欧美蜜桃大片在线观看 | 免费无遮挡无码视频在线观看 | 国产国产午夜精华免费 | 国产精品无码a∨精品影院 国产精品无码av无码 | 无码免费国产影视 | 深夜精品寂寞在线观看黄网站 | 日本视频免费观看的网站 | 亚洲午夜精品久久久久久成年 | 国产精品jizz视频 | 亚洲av无码成 | 深夜在线视频免费网址 | 成人综合激情另类小说 | 亚洲国产精品网站在线播放 | 日本高清www | 日本强伦姧护士在线播放 | 日本aⅴ中文免费观看 | 欧美日韩午 | 无码中文字幕日韩专区 | 午夜亚洲嘿嘿嘿在线观看 | 精品少妇| 91久久精品日日躁夜夜躁欧美 | 国产人成视频免费看 | 中文字幕在线播放 | 国产精品偷窥盗摄在线 | 日日夜人人澡人人澡人人看免 | 九七电影院 | 中文字幕有码在线观看 | 韩国激情一区二区无码在线 | 中文字幕日韩哦哦 | 日韩免费一区二区人妻丝袜 | 91欧美一| 精品三级在线国产 | 中文字幕高清免费大全8 | 日本视频在线观看一区二区三区 | 国内精品九九久久久精品 | 成人麻豆精品激情视频在线观看 | 日产一线 | 国产麻豆91传媒入口 | 精品九九99久久人妻免费 | 91久久综合亚洲鲁鲁五月天 | 91精品国产综合久久青草 | 在线看所有av的网站 | 国产手机在线αⅴ片无码观看 | 日本美女一级视频 | 亚洲av无码久久精品色欲 | 亚洲精品在线观看视频 | 午夜一级免费 | 91中文在线字幕 | 欧美成人三级网站 | 成全动漫高清电影好看的电视剧 | 亚洲αv久久久噜噜噜噜噜 亚洲а∨精品天堂在线 | 三级三级三级a级全黄三 | 亚洲a∨中文无码 | 一区二区三区精品黄色影院 | 亚洲日韩国产二区无码 | 国产一区二区三区精品综合 | 亚洲av福利天堂一区二区三 | 亚洲妇色视频在线观看 | 国产激情在线观看 | 欧美三级中文字幕久久版 | 国内精品一级毛片免费看 | 日本xxx片免费高清在线 | 高潮毛片无遮挡高清免费视频 | 欧美一级特黄特色大片免费 | 伊人影视网 | 天天av天天爽无码中文 | 91福利一区二区三区 | 久久99国产综合精品女同 | 精品久久亚洲中文无码 | 色猫咪av在| 91精品国产色综合久 | 97视频播放器安卓版v1.11 | 呦系列视频一区二区三区 | 无码人妻aⅴ一区二区三区日本 | 精品久久久久久中文字 | 国产亚洲日韩av在线播放 | 成人精品一区二区三区不卡免费看 | 中文字幕日韩欧美一区二区 | 日本熟妇中文字幕三级 | 国产高清一区二区三区视频 | a人成日韩视频在线观看 | 91午夜福利 | 欧美伊人色综合久久天天 | 欧美日韩一区二区三区在线视频 | 99精品一区二区三区无码吞精 | 国产成人精品综合在 | 精品国产免费人成电影 | 殴美一性一乱一交一视频 | 亚洲欧美变态另类综合 | 欧美伊人久久大香线蕉 | 成人高清无码在线观看 | 麻豆99激情视频在线播放 | 日本不卡一区二区高清久久久 | 亚洲国产av美女网站 | 亚洲中文字幕无码久久2025 | 国产欧美另类久久久精品区 | 国产成人av网站手机不卡 | 日韩无码中文另类 | 在线亚洲欧洲日产国 | 亚洲国产另类久久久精品网站 | 国产精品看片在线观看 | av喷水高潮喷水在线观看 | 国产欧美亚洲一区二区 | 午夜精品久久无码av网站 | 国产专区亚洲精品无码 | 在线看免费观看av深夜影院 | 国产精品毛片无遮挡高清 | 日韩精品一区 | 欧美日韩免费观看 | 国产内射一级一片内射精品视频 | 国产清纯白嫩美女正无套播放 | 91在线亚洲综合在线 | 成本人在线观看视频网站 | 99久久综合狠狠综合久久aⅴ | 91麻豆精品激情在 | 亚洲精品国产男 | 日本动漫在中国的传播黄金时期 | 日本中文一二区高 | 国产成人午夜高潮毛片刘涛 | 一区二区日韩 | 日本aⅴ深夜私人噜噜噜视频 | 国产高清www免费视频 | 亚洲av无码久久无遮挡 | 国产成年网站v片在线观看 国产成年无码av片在线 | 无码免费毛片 | 国产91高跟肉色丝袜 | 亚洲暴爽av人人爽日日碰 | 亚洲一卡一卡二 | 国产精品污www在线观看 | 久久99热国产 | 午夜热门精品一区二区三区 | 亚洲夜夜欢无码一区二区 | 91香蕉视频在 | 99久久99久久精品国产 | 91探花精品偷拍在线播放 | 亚洲日韩一区二区一 | 亚洲午夜av无码专区在线播放 | 日本动漫在中国的传播黄金时期 | 国产精品国产三级国产av中文 | 91桃色无码国产在线观看二区 | 国产成人无码a区在线观看视频不卡 | 97精品伊人久久 | 91精品国产高清久久久久久io | 国内精品自在自线视频香蕉 | 麻豆亚洲精品无码不卡在线播 | 麻豆91精品91久久久的内涵 | 天天视频.综合网 |