中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

基于zepto.js實現仿手機QQ空間的大圖查看組件ImageView.js詳解
來源:易賢網 閱讀:1264 次 日期:2015-03-11 15:39:06
溫馨提示:易賢網小編為您整理了“基于zepto.js實現仿手機QQ空間的大圖查看組件ImageView.js詳解”,方便廣大網友查閱!

這篇文章主要介紹了基于zepto.js實現仿手機QQ空間的大圖查看組件ImageView.js的源碼和使用方法,并附上一個使用ImageView.js的實例,這里分享給大家,有需要的小伙伴參考下。

調用方式 :ImageView(index,imgData) --index參數 為圖片默認顯示的索引值,類型 為Number --imaData參數 為圖片url數組 ,類型為Array

使用之前要先引入 zepto.js 文件

ImageView.js具體代碼如下:

代碼如下:

/*

* ImageView v1.0.0

* --基于zepto.js的大圖查看

* --調用方法 ImageView(index,imgDada)

* --index 圖片默認值顯示索引,Number --imgData 圖片url數組,Array

* */

var ImageView=(function(window,$){

var _this=$("#slideView"),_ImgData=[],_index=0,_length=0,

_start=[],_org=[],_orgTime=null,

_lastTapDate=null,

_zoom=1,_zoomXY=[0,0],_transX=null,

_advancedSupport = false,

_doubleDistOrg=1,_doubleZoomOrg=1,isDoubleZoom = false,

isSlide=true,isDrag=false,timer=null,

winW=window.innerWidth,winH=window.innerHeight;

/**

* 事件對象 event

*/

var Event={

touchstart:function(e){

e.preventDefault();

if (_advancedSupport && e.touches && e.touches.length >= 2) {

var img = getImg();

$(img).css({"-webkit-transitionDuration": "0ms","transitionDuration": "0ms"});

_doubleZoomOrg = _zoom;

_doubleDistOrg = getDist(e.touches[0].pageX, e.touches[0].pageY, e.touches[1].pageX, e.touches[1].pageY);

isDoubleZoom = true;

return

}

e = e.touches ? e.touches[0] : e;

isDoubleZoom = false;

_start = [e.pageX, e.pageY];

_org = [e.pageX, e.pageY];

_orgTime = Date.now();

_transX = -_index * winW;

if(_zoom!=1){

_zoomXY = _zoomXY || [0, 0];

_orgZoomXY = [_zoomXY[0], _zoomXY[1]];

var img = getImg();

img&&($(img).css({"-webkit-transitionDuration": "0ms","transitionDuration": "0ms"}));

isDrag = true

}else{

_this.find(".pv-inner").css({"-webkit-transitionDuration":"0ms","transitionDuration":"0ms"});

isSlide = true

}

},

touchmove:function(e){

e.preventDefault();

if (_advancedSupport && e.touches && e.touches.length >= 2) {

var newDist = getDist(e.touches[0].pageX, e.touches[0].pageY, e.touches[1].pageX, e.touches[1].pageY);

_zoom = (newDist/_doubleDistOrg) * _doubleZoomOrg

var img = getImg();

$(img).css({"-webkit-transitionDuration": "0ms","transitionDuration": "0ms"});

if (_zoom < 1) {

_zoom = 1;

_zoomXY = [0, 0];

$(img).css({"-webkit-transitionDuration": "200ms","transitionDuration": "200ms"})

} else if (_zoom >getScale(img) * 2){

_zoom = getScale(img) * 2;

}

$(img).css({"-webkit-transform": "scale(" + _zoom + ") translate(" + _zoomXY[0] + "px," + _zoomXY[1] + "px)","transform": "scale(" + _zoom + ") translate(" + _zoomXY[0] + "px," + _zoomXY[1] + "px)"});

return

}

if (isDoubleZoom){

return;

}

e = e.touches ? e.touches[0] : e;

if (_zoom != 1) {

var deltaX = (e.pageX - _start[0]) / _zoom;

var deltaY = (e.pageY - _start[1]) / _zoom;

_start = [e.pageX, e.pageY];

var img = getImg();

var newWidth = img.clientWidth *_zoom,

newHeight = img.clientHeight * _zoom;

var borderX = (newWidth - winW) / 2 / _zoom,

borderY = (newHeight - winH) / 2 / _zoom;

(borderX >= 0)&&(_zoomXY[0] < -borderX || _zoomXY[0] > borderX)&&(deltaX /= 3);

(borderY > 0)&&(_zoomXY[1] < -borderY || _zoomXY[1] > borderY)&&(deltaY /= 3);

_zoomXY[0] += deltaX;

_zoomXY[1] += deltaY;

(_length == 1 && newWidth < winW||newWidth < winW)&&(_zoomXY[0] = 0);

(_length == 1 && newHeight < winH||newHeight < winH)&&(_zoomXY[1] = 0);

$(img).css({"-webkit-transform": "scale(" + _zoom + ") translate(" + _zoomXY[0] +

"px," + _zoomXY[1] + "px)","transform": "scale(" + _zoom + ") translate(" + _zoomXY[0] +

"px," + _zoomXY[1] + "px)"})

}else{

if (!isSlide) return;

var deltaX = e.pageX - _start[0];

(_transX > 0 || _transX < -winW * (_length - 1))&&(deltaX /= 4);

_transX = -_index * winW + deltaX;

_this.find(".pv-inner").css({"-webkit-transform":"translate(" + _transX + "px,0px) translateZ(0)"});

}

},

touchend:function(e){

if (isDoubleZoom) {

return;

}

if (_zoom != 1) {

if (!isDrag){return;}

var img = getImg();

var newWidth = img.clientWidth *_zoom,

newHeight = img.clientHeight * _zoom;

var borderX = (newWidth - winW) / 2 / _zoom,

borderY = (newHeight - winH) / 2 / _zoom;

if (_length > 1 && borderX >= 0) {

var updateDelta = 0;

var switchDelta = winW / 6;

if (_zoomXY[0] < -borderX - switchDelta / _zoom && _index < _length - 1){

updateDelta = 1;

}else if (_zoomXY[0] > borderX + switchDelta / _zoom && _index > 0){

updateDelta = -1;

}

if (updateDelta != 0) {

scaleDown(img);

changeIndex(_index + updateDelta);

return

}

}

var delta = Date.now() - _orgTime;

if (delta < 300) {

(delta <= 10)&&(delta = 10);

var deltaDis = Math.pow(180 / delta, 2);

_zoomXY[0] += (_zoomXY[0] - _orgZoomXY[0]) * deltaDis;

_zoomXY[1] += (_zoomXY[1] - _orgZoomXY[1]) * deltaDis;

$(img).css({"-webkit-transition": "400ms cubic-bezier(0.08,0.65,0.79,1)","transition": "400ms cubic-bezier(0.08,0.65,0.79,1)"})

} else{

$(img).css({"-webkit-transition": "200ms linear","transition": "200ms linear"});

}

if (borderX >= 0){

if (_zoomXY[0] < -borderX){

_zoomXY[0] = -borderX;

}else if (_zoomXY[0] > borderX){

_zoomXY[0] = borderX;

}

}

if (borderY > 0){

if (_zoomXY[1] < -borderY){

_zoomXY[1] = -borderY;

}else if (_zoomXY[1] >borderY){

_zoomXY[1] = borderY;

}

}

if (Math.abs(_zoomXY[0]) < 10) {

$(img).css({"-webkit-transform": "scale(" + _zoom + ") translate(0px," + _zoomXY[1] + "px)","transform": "scale(" + _zoom + ") translate(0px," + _zoomXY[1] + "px)"});

return

} else{

$(img).css({"-webkit-transform": "scale(" + _zoom + ") translate(" + _zoomXY[0] + "px," + _zoomXY[1] + "px)","transform": "scale(" + _zoom + ") translate(" + _zoomXY[0] + "px," + _zoomXY[1] + "px)"});

}

isDrag = false

}else{

if (!isSlide){ return;}

var deltaX = _transX - -_index * winW;

var updateDelta = 0;

if (deltaX > 50){

updateDelta = -1;

}else if(deltaX < -50){

updateDelta = 1;

}

_index=_index+updateDelta;

changeIndex(_index);

isSlide =false

}

},

click:function(e){

_zoom=1;

_zoomXY=[0,0];

_this.css("opacity","0");

timer=setTimeout(function(){

_this.css({"display":""}).html("");

unbind();

},150)

},

dobelTap:function(e){

clearTimeout(timer);

var now = new Date;

if (now - _lastTapDate < 500){

return;

}

_lastTapDate = now;

var img = getImg();

if (!img){

return;

}

if (_zoom != 1){

scaleDown(img);

}else{

scaleUp(img);

}

},

setView:function(e){

winW=window.innerWidth;

winH=window.innerHeight;

_this.width(window.innerWidth).height(window.innerHeight);

translate((-_index*window.innerWidth),0,0,$(".pv-inner")[0]);

scaleDown(getImg())

}

};

var handleEvent=function(e){

switch (e.type){

case "touchstart":

Event.touchstart(e);

break;

case "touchmove":

Event.touchmove(e);

break;

case "touchcancel":

case "touchend":

Event.touchend(e);

break;

case "orientationchange":

case "resize":

Event.setView(e);

break

}

};

/**

* 綁定事件

*/

var bind=function(){

_this.on("singleTap",function(e){

e.preventDefault();

var now = new Date;

if (now - _lastTapDate < 500){

return;

}

_lastTapDate = now;

Event.click(e);

return false;

}).on("doubleTap", function(e) {

e.preventDefault();

Event.dobelTap(e);

return false;

});

_this.on("touchstart touchmove touchend touchcancel", function(e) {

handleEvent(e);

});

Event.setView();

"onorientationchange" in window ? window.addEventListener("orientationchange",Event.setView,false) : window.addEventListener("resize",Event.setView,false);

};

/**

* 解除事件

*/

var unbind= function() {

_this.off();

"onorientationchange" in window ? window.removeEventListener("orientationchange",Event.setView, false) : window.removeEventListener("resize",Event.setView, false)

};

var getDist= function(x1, y1, x2, y2) {

return Math.sqrt(Math.pow(x2 - x1, 2) + Math.pow(y2 - y1, 2), 2)

}

/**

* 圖片縮放

*/

var getScale=function(img) {

var h = img.naturalHeight, w = img.naturalWidth,

Scale=w*h/(img.clientHeight*img.clientWidth);

return Scale;

};

var scaleUp=function(img) {

var scale = getScale(img);

if (scale > 1)

$(img).css({"-webkit-transform": "scale(" + scale + ")","transform": "scale(" + scale + ")","-webkit-transition": "200ms","transition": "200ms"});

_zoom = scale;

};

var scaleDown=function(img) {

_zoom = 1;

_zoomXY = [0, 0];

_doubleDistOrg = 1;

_doubleZoomOrg = 1;

$(img).css({"-webkit-transform": "scale(1)","transform": "scale(1)","-webkit-transition": "200ms","transition": "200ms"});

};

/**

* 滑動效果

* dist

*/

var translate = function( distX,distY,speed,ele) {

if( !!ele ){ ele=ele.style; }else{ return; }

ele.webkitTransitionDuration = ele.MozTransitionDuration = ele.msTransitionDuration = ele.OTransitionDuration = ele.transitionDuration = speed + 'ms';

ele.webkitTransform = 'translate(' + distX + 'px,'+distY+'px)' + 'translateZ(0)';

ele.msTransform = ele.MozTransform = ele.OTransform = 'translateX(' + distX + 'px) translateY(' + distY + 'px)';

};

/**

* 更改索引值 _index

*/

var changeIndex=function(index,force){

if (index < 0){

index = 0;

}else if(index >= _length){

index =_length - 1;

}

_index = index;

translate((-_index*window.innerWidth),0,force? "0" : "200" ,$(".pv-inner")[0]);

$("#J_index").html(_index+1+"/"+_length);

imgLoad();

}

/**

* 圖片獲取

*/

var getImg=function(index) {

var img = _this.find("li").eq(index || _index).find("img");

if (img.size() == 1){

return img[0];

}else{

return null

}

}

/**

* 圖片加載

*/

var imgLoad=function(){

if($(".pv-img").eq(_index).find("img")[0]){

$("#J_loading").css("display","");

return;

}else{

$("#J_loading").css("display","block");

var tempImg=new Image(),w,h,set;

tempImg.src=_ImgData[_index];

$(".pv-img").eq(_index)[0].appendChild(tempImg);

tempImg.onload=function(){

$("#J_loading").css("display","");

}

}

};

/**

* 創建大圖查看Dome結構

*/

var Create=function(){

_this.append("<ul class='pv-inner'></ul>").append("<p class='counts'><span class='value' id='J_index'>"+(_index+1)+"/"+_length+"</span></p>").append("<span class='ui-loading' id='J_loading' ><i class='t1'></i><i class='t2'></i><i class='t3'></i></span>")

for(var i=0;i<_length;i++){

$(".pv-inner").append("<li class='pv-img'></li>")

}

imgLoad();

};

/**

* 大圖查看初始化

*/

var init=function(){

!!_this[0]||$("body").append("<div class='slide-view' id='slideView'></div>");

_this=$("#slideView");

($.os.iphone || $.os.android && parseFloat($.os.version) >= 4)&&(_advancedSupport = true);

}();

/**

* 大圖查看返回接口函數

* ImageView(index,data)

* index 初始索引值 nubmer

* data 圖片數組 array

*/

var ImageView=function(index,data){

_ImgData=data;

_index=index;

_length=data.length;

//創建dom結構

Create();

//dom結構顯示

_this.css("display","block");

//綁定事件

bind();

}

return ImageView;

})(window,Zepto);

ImageView.js用到的css代碼如下:

代碼如下:

/*大圖查看*/

.slide-view {background: #000;position: fixed;width: 100%;height: 100%;overflow: hidden;top: 0;left: 0;z-index: 100;opacity:0;display: none;-webkit-animation:fadeIn .2s linear forwards;animation:fadeIn .2s linear forwards;-webkit-touch-callout: none;-webkit-transform-style: preserve-3d; }

.slide-view .counts {position: absolute;top: 5%;left: 0;right: 0;text-align: center;font-size: 0;-webkit-transform-style: preserve-3d; }

.slide-view .counts .value {border-radius: 9px;line-height: 18px;padding: 0 6px;font-size: 11px;display: inline-block;background-color: rgba(102,102,102,.6);color: #f1f1f1;}

.pv-inner {position: relative;z-index: -1;display: -webkit-box;display: box;width: 100%;height: 100%;-webkit-transition: all 350ms linear;-webkit-backface-visibility: hidden;transition: all 350ms linear;backface-visibility: hidden;-webkit-touch-callout: none;-webkit-transform-style: preserve-3d; }

.pv-inner li {text-align: center;display: -webkit-box;display: box;-webkit-box-align: center;overflow: hidden;width: 100%;height: 100%;-webkit-touch-callout: none;backface-visibility: hidden;-webkit-transform-style: preserve-3d; }

.pv-inner img {max-width: 97%;max-height: 100%;-webkit-transform: scale(1) translate(0px,0px);transform: scale(1) translate(0px,0px);visibility: visible;-webkit-transition: 200ms;transition: 200ms;-webkit-user-select: none;user-select: none;display: block;margin: 0 auto;backface-visibility: hidden;-webkit-transform-style: preserve-3d; }

@-webkit-keyframes fadeIn{

0%{opacity:0;}

100%{opacity:1;}

}

@keyframes fadeIn{

0%{opacity:0;}

100%{opacity:100%;}

}

/*--------------------loading-----------------------*/

.ui-loading {position: absolute;left: 50%;top: 50%;display: none;vertical-align: middle;font: 0/0 arial;margin: -5px 0 0 -10px;}

.ui-loading i {display: inline-block;width: 5px;height: 12px;background: #fff;vertical-align: top;-webkit-animation: loading-spin 1s infinite linear;animation: loading-spin 1s infinite linear;}

.ui-loading i {-webkit-animation: loading-spin 1s infinite linear;animation: loading-spin 1s infinite linear}

.ui-loading i.t2 {margin: 0 3px;-webkit-animation-name: loading-spin-one;animation-name: loading-spin-one}

.ui-loading i.t3 {-webkit-animation-name: loading-spin-two;animation-name: loading-spin-two}

@-webkit-keyframes loading-spin {

0% {opacity: 0}

30% {opacity: 1;-webkit-transform: scale(1,1.2)}

60% {opacity: 0;-webkit-transform: scale(1)}

100% {opacity: 0}

}

@-webkit-keyframes loading-spin-one {

0% {opacity: 0}

20% {opacity: 0}

50% {opacity: 1;-webkit-transform: scale(1,1.2)}

80% {opacity: 0;-webkit-transform: scale(1)}

100% {opacity: 0}

}

@-webkit-keyframes loading-spin-two {

0% {opacity: 0}

40% {opacity: 0}

70% {opacity: 1;-webkit-transform: scale(1,1.2)}

100% {opacity: 0;-webkit-transform: scale(1)}

}

@keyframes loading-spin {

0% {opacity: 0}

30% {opacity: 1;transform: scale(1,1.2)}

60% {opacity: 0;transform: scale(1)}

100% {opacity: 0}

}

@keyframes loading-spin-one {

0% {opacity: 0}

20% {opacity: 0}

50% {opacity: 1;transform: scale(1,1.2)}

80% {opacity: 0;transform: scale(1)}

100% {opacity: 0}

}

@keyframes loading-spin-two {

0% {opacity: 0}

40% {opacity: 0}

70% {opacity: 1;transform: scale(1,1.2)}

100% {opacity: 0;transform: scale(1)}

}

/*--------------------loading-end----------------------*/

ps:代碼功能比較簡單,可能會存在諸多問題。但也能勉強使用了

下用是使用ImageView.js的一個例子:

代碼如下:

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no">

<title>移動端大圖查看</title>

<script type="text/javascript" src="test_files/zepto.min.js" ></script>

<script type="text/javascript" src="test_files/ImageView.js" ></script>

</head>

<body>

<!--以上為HTML頁面結構 -->

<!--以下為ImageView使用例子 -->

<script>

;(function(){

//獲取 html 中的圖片元素

var aImg=document.querySelectorAll("img"),

aImgSrc=[];

//為圖片綁定單擊事件

for(var i=0,l=aImg.length;i<l;i++){

aImg[i].index=i;

aImg[i].className+=" conPic";

aImgSrc.push(aImg[i].src);

}

for(var i=0;i<$(".conPic").length;i++){

if($(".conPic")[i].complete){

addTap($(".conPic")[i])

}else{

$(".conPic")[i].onload=function(){

addTap(this);

}

}

}

function addTap(obj){

$(obj).on("tap",function(){

//調用ImageView

ImageView($(obj)[0].index,aImgSrc);

})

}

})();

</script>

</body>

以上就是本文的全部內容了,希望大家能夠喜歡

更多信息請查看IT技術專欄

更多信息請查看腳本欄目
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026上岸·考公考編培訓報班

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
欧美一区永久视频免费观看| 国产专区欧美精品| 国产视频精品va久久久久久| 激情久久一区| 久久久亚洲精品一区二区三区| 欧美激情亚洲视频| 午夜精品亚洲| 怡红院精品视频| 嫩草成人www欧美| 亚洲一级网站| 亚洲中午字幕| 亚洲婷婷免费| 在线观看视频亚洲| 欧美黄色片免费观看| 久久久久久欧美| 亚洲欧美成人一区二区三区| 1024欧美极品| 国产精品国产三级国产aⅴ浪潮| 欧美一区二区三区四区在线 | 免费在线视频一区| 91久久精品www人人做人人爽| av成人福利| 日韩视频亚洲视频| 国产婷婷色一区二区三区| 欧美视频一区二| 麻豆国产精品va在线观看不卡 | 国产精品高精视频免费| 欧美成人黑人xx视频免费观看| 在线亚洲伦理| 午夜国产一区| 免费不卡在线观看av| 国产精品久久久久9999吃药| 国产精品日韩在线一区| 国产在线国偷精品产拍免费yy| 国产精品一区在线观看| 国产一区二区看久久| 亚洲高清不卡av| 一区二区欧美亚洲| 久久精品视频在线看| 欧美国产视频在线| 国产女人精品视频| 亚洲精品国产精品国自产观看| 日韩视频一区二区三区| 伊人婷婷欧美激情| 国产欧美精品一区aⅴ影院| 欧美在线视频导航| 久久精品人人爽| 久热爱精品视频线路一| 欧美日韩精品一区视频 | 牛人盗摄一区二区三区视频| 久久久久免费观看| 久久经典综合| 国产精品国产三级国产aⅴ浪潮 | 国产精品视频久久久| 亚洲国产成人精品视频 | 亚洲精品乱码视频| 欧美精品三区| 亚洲精品影视| 久久婷婷亚洲| 国产精品第十页| 中文久久精品| 欧美日韩精品免费看 | 欧美一区二区三区视频在线 | 亚洲人www| 久久精品国产第一区二区三区最新章节| 美乳少妇欧美精品| 国产精品亚洲综合一区在线观看| 99热这里只有成人精品国产| 久久精品91久久久久久再现| 国产精品xnxxcom| 久久久午夜电影| 亚洲免费在线| 欧美视频网站| 依依成人综合视频| 模特精品裸拍一区| 亚洲综合日韩中文字幕v在线| 在线视频日韩| 麻豆成人在线观看| 欧美日韩国产成人在线| 欧美伊人影院| 新67194成人永久网站| 在线亚洲精品福利网址导航| 最新日韩在线| 日韩视频第一页| 久久在线免费观看| 久久人91精品久久久久久不卡| 久久精品成人| 国产精品女主播在线观看| 99精品国产99久久久久久福利| 亚洲一区在线观看视频| 欧美一区日韩一区| 亚洲欧美一区在线| 亚洲欧美一区二区激情| 久久看片网站| 亚洲男人第一av网站| 美国十次成人| 欧美影院在线| 国产一区二区欧美日韩| 国产精品日韩欧美一区| 免费成人黄色片| 国产免费亚洲高清| 欧美日本一道本| 久久精品在线播放| 久久久噜噜噜久久| 亚洲国产精品久久久久| 亚洲免费观看高清完整版在线观看熊 | 亚洲狼人综合| 欧美日韩国产欧| 蜜臀久久99精品久久久画质超高清 | 国内视频一区| 国产欧美日韩在线观看| 国产小视频国产精品| 亚洲全部视频| 欧美一区二区三区日韩视频| 老司机精品视频网站| 欧美日韩国内| 美女日韩在线中文字幕| 午夜综合激情| 欧美精品三级日韩久久| 国产性猛交xxxx免费看久久| 久久爱www久久做| 欧美在线www| 欧美激情综合亚洲一二区| 狠狠色噜噜狠狠狠狠色吗综合| 亚洲精品美女91| 亚洲一级二级在线| 欧美亚洲日本一区| 美女精品在线观看| 91久久国产精品91久久性色| 欧美精品成人在线| 亚洲人成在线播放网站岛国| 91久久久亚洲精品| 亚洲电影在线看| av不卡在线| 亚洲精品韩国| 亚洲伊人一本大道中文字幕| 国产日产欧美一区| 欧美精品手机在线| 欧美一区二区三区的| 在线观看国产一区二区| 亚洲欧美日韩另类| 99亚洲视频| 久久久国际精品| 国产精品va在线播放我和闺蜜| 在线日韩成人| 欧美精品亚洲一区二区在线播放| 亚洲国产日韩在线一区模特| 欧美另类人妖| 美女图片一区二区| 亚洲一级黄色片| 国产视频观看一区| 免费久久99精品国产自在现线| 久久免费国产精品| 韩国av一区二区| 蜜桃av久久久亚洲精品| 国产精品美女久久久| 一区二区三区日韩精品| 在线免费观看日本欧美| 国产乱肥老妇国产一区二| 亚洲春色另类小说| 亚洲精品一区中文| 精品av久久久久电影| 国产精品免费看| 欧美国产日韩一区二区在线观看| 一本色道久久综合亚洲精品婷婷| 国产精品亚洲综合天堂夜夜| 国产精品久久久久久久久久三级| 欧美激情精品久久久久久大尺度| 香蕉久久精品日日躁夜夜躁| 亚洲欧美中日韩| 一区二区三区日韩欧美精品| 久久婷婷久久一区二区三区| 99精品热视频| 国产精品美女主播在线观看纯欲| 欧美国产一区在线| 欧美精品导航| 欧美理论大片| 国产精品久久久久久久久久久久久久 | 国产精品久久二区| 久久久久九九九九| 亚洲图中文字幕| 亚洲天堂成人| 国产一区视频在线观看免费| 欧美成人精品一区二区三区| 伊人久久大香线蕉av超碰演员| 欧美体内谢she精2性欧美| 欧美日韩国产综合新一区| 欧美—级在线免费片| 国产精品v一区二区三区| 国产婷婷精品| 卡通动漫国产精品| 欧美福利电影网| 欧美激情视频网站| 欧美成人午夜激情| 欧美天堂亚洲电影院在线观看| 久久视频在线免费观看| 久久男人av资源网站| 国产精品v日韩精品| 久久国产日韩欧美| 欧美在线观看视频一区二区|