欧美videos另类精品-欧美videos另类极品-欧美vide-欧美va在线视频-欧美va在线观看-欧美va在线播放免费观看

從零開始學習jQuery (五) 事件與事件對象

2013-4-12    藍藍設計的小編

轉載藍藍設計(   www.73404.com.cn  )是一家專注而深入的設計機構 ,為期望卓越的國內外企業提供有效的   BS界面設計 、 cs界面設計 、  ipad界面設計   、  包裝設計 、  圖標定制 、  用戶體驗 、交互設計、   網站建設 、平面設計服務

來源:http://www.cnblogs.com/zhangziqiu/archive/2009/05/05/jQuery-Learn-5.html

如果您想訂閱本博客內容,每天自動發到您的郵箱中,   請點這里

一.摘要

事件是腳本編程的靈魂. 所以本章內容也是jQuery學習的重點. 本文將對jQuery中的事件處理以及事件對象進行詳細的講解. 

 

二.前言

本篇文章是至今為止本系列內容最多的一篇, 足以可見其重要性.  大家反映要多列舉示例. 我會在時間允許的情況下盡量多列舉示例. 真正的投入生產使用的實例暫時還無法加入到文章中, 但是可能最后我會列舉一些作品供大家借鑒. 另外本人水平有限, 因為我不是UI設計師. 文章可能有錯誤的地方, 希望大家幫忙指出, 一起學習一起進步. 在技術的世界里我們是沒有任何利益瓜葛. 希望大家都抱著彼此鼓勵的心態, 對于回復中的激進評論我也都會考慮, 但是希望能夠彼此尊重, 保護博客園這片程序員的凈土!

 

三.事件與事件對象

曾經在我的 "Javascript公共腳本庫系列(二): 添加事件多播委托的方法" 和 "Javascript公共腳本庫系列(三): 格式化事件對象/事件對象詳解" 兩篇文章中,  曾講解過javascript中的事件和事件對象.

首先看一下我們經常使用的添加事件的方式:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head>     <title>javascript中的事件</title>     <script type="text/javascript" src="scripts/jquery-1.3.2-vsdoc2.js"></script>     <script type="text/javascript">
        $(function()
        {
            document.getElementById("testDiv2").onclick = showMsg;
        })

        function showMsg(event)
        {
            alert("!!!");
        }        
    </script> </head> <body>     <div id="testDiv1" onclick="showMsg();">單擊事件 1</div>     <div id="testDiv2">單擊事件 2</div> </body> </html>


我們最常使用為元素添加onclick元素屬性的方式添加事件.

為testDiv2的添加onclick事件的方式是修改Dom屬性.

在上一章中已經說明了什么是元素屬性, 什么是Dom屬性.這兩種方式的效果相同. 當單擊div時會顯示提示框.

請注意, 雖然效果相同, 但是并不等效.

document.getElementById("testDiv2").onclick = showMsg;


等效于:

<div id="testDiv1" onclick="alert("!!!");">單擊事件 1</div>


注意兩者的區別了嗎?  我們常用的修改元素屬性添加事件的方式, 實際上是建立了一個匿名函數:

document.getElementById("testDiv1").onclick = function(event)
{
    alert("!!!");
};


這個匿名函數的簽名和我們手寫的showMsg簽名相同, 所以可以把showMsg直接賦值給onclick.

這種方式的弊端是:

1. 只能為一個事件綁定一個事件處理函數.  使用"="賦值會把前面為此時間綁定的所有事件處理函數沖掉.

2. 在事件函數(無論是匿名函數還是綁定的函數)中獲取事件對象的方式在不同瀏覽器中要特殊處理:

IE中,事件對象是window對象的一個屬性.事件處理函數必須這樣訪問事件對象:

        obj.onclick=function()
        {
            var oEvent = window.event;
        }

在DOM標準中,事件對象必須作為唯一參數傳給事件處理函數:

        obj.onclick=function()
        {
            var oEvent = arguments[0];
        }

除了使用argument[0]訪問此參數, 我們也可以指定參數名稱,上面的代碼等同于:

        obj.onclick=function(oEvent)
        {

        }

目前兼容DOM的瀏覽器有Firefox,Safari,Opera,IE7等.

3. 添加多播委托的函數在不同瀏覽器中是不一樣的.

下面是在"Javascript公共腳本庫系列(二): 添加事件多播委托的方法"文章中,  提供的兼容多瀏覽器添加多播委托的方法:

//統一的為對象添加多播事件委托的方法 /*       參數說明:     oTarget     : 要添加事件的對象.比如"document".     sEventType  : 事件類型.比如單擊事件"click".     fnHandler   : 發生事件時調用的方法. 比如一個靜態函數"hideCalendar"          使用舉例:     //單擊頁面的任何元素,只要沒有取消冒泡,都可以關閉日歷控件     var cf = document.getElementById("CalFrame");     if( cf != null && hideCalendar != null )     {         ScriptHelper.addEventListener( document, "click", hideCalendar );     } */ scriptHelper.prototype.addEventListener = function(oTarget, sEventType, fnHandler)
{
    if( oTarget.addEventListener )//for dom     {
        oTarget.addEventListener( sEventType, fnHandler, false )
    }
    else if( oTarget.attachEvent )//for ie     {
        oTarget.attachEvent( "on" + sEventType, fnHandler);
    }
}


所以我們首先應該摒棄<div onclick="..."></div>這種通過修改元素屬性添加事件的方式. 盡量使用添加多播事件委托的方式為一個事件綁定多個事件處理函數, 比如為document對象的單擊事件添加一個關閉彈出層的方法, 使用多播就不會影響document對象原有的事件處理函數.

 

四. jQuery中的事件

有了jQuery,  我們有了處理對象事件的一系列函數.  上面基礎知識還是要懂, 但是再也不用自己去實現處理多播事件委托的函數了.  正所謂有了jQuery, 天天喝茶水. 下面是在jQuery中最常使用的bind()方法舉例:

$("#testDiv4").bind("click", showMsg);


我們為id是testDiv4的元素, 添加列click事件的事件處理函數showMsg.

使用jQuery事件處理函數的好處:

1. 添加的是多播事件委托.  也就是為click事件又添加了一個方法, 不會覆蓋對象的click事件原有的事件處理函數.

            $("#testDiv4").bind("click", function(event) { alert("one"); });
            $("#testDiv4").bind("click", function(event) { alert("two"); });


單擊testDiv4對象時, 依次提示"one"和"two".

2. 統一了事件名稱.  
添加多播事件委托時, ie中是事件名稱前面有"on". 但是使用bind()函數我們不用區分ie和dom ,  因為內部jQuery已經幫我們統一了事件的名稱.

3. 可以將對象行為全部用腳本控制. 
讓HTML代碼部分只注意"顯示"邏輯. 現在的趨勢是將HTML的行為, 內容與樣式切分干凈. 其中用腳本控制元素行為, 用HTML標簽控制元素內容, 用CSS控制元素樣式. 使用jQuery事件處理函數可以避免在HTML標簽上直接添加事件.

下面是基礎的jQuery事件處理函數:

事件處理  Event Handling:

名稱 說明 舉例

bind( type, [data], fn )

為每一個匹配元素的特定事件(像click)綁定一個事件處理器函數。 當每個段落被點擊的時候,彈出其文本: 

$("p").bind("click", function(){ 
  alert( $(this).text() ); 
});

one( type, [data], fn ) 為每一個匹配元素的特定事件(像click)綁定一個一次性的事件處理函數。 當所有段落被第一次點擊的時候,顯示所有其文本: 

$("p").one("click", function(){ 
  alert( $(this).text() ); 
});

trigger( event, [data] ) 在每一個匹配的元素上觸發某類事件。 

這個函數也會導致瀏覽器同名的默認行為的執行。比如,如果用trigger()觸發一個'submit',則同樣會導致瀏覽器提交表單。如果要阻止這種默認行為,應返回false。

你也可以觸發由bind()注冊的自定義事件

給一個事件傳遞參數: 

$("p").click( function (event, a, b) { 
  // 一個普通的點擊事件時,a和b是undefined類型
  // 如果用下面的語句觸發,那么a指向"foo",而b指向"bar" 
} ).trigger("click", ["foo", "bar"]);

triggerHandler( event, [data] ) 這個特別的方法將會觸發指定的事件類型上所有綁定的處理函數。但不會執行瀏覽器默認動作. 如果你對一個focus事件執行了 .triggerHandler() ,瀏覽器默認動作將不會被觸發,只會觸發你綁定的動作:

$("#old").click(function(){ 
  $("input").trigger("focus"); 
}); 
$("#new").click(function(){ 
  $("input").triggerHandler("focus"); 
}); 
$("input").focus(function(){   $("<span>Focused!</span>").appendTo("body").fadeOut(1000); });

unbind( type, fn ) bind()的反向操作,從每一個匹配的元素中刪除綁定的事件。 

如果沒有參數,則刪除所有綁定的事件。

你可以將你用bind()注冊的自定義事件取消綁定。

如果提供了事件類型作為參數,則只刪除該類型的綁定事件。

如果把在綁定時傳遞的處理函數作為第二個參數,則只有這個特定的事件處理函數會被刪除。

把所有段落的所有事件取消綁定: 
$("p").unbind() 

將段落的click事件取消綁定: 
$("p").unbind( "click" ) 

刪除特定函數的綁定,將函數作為第二個參數傳入: 

var foo = function () { 
  // 處理某個事件的代碼 
}; 
$("p").bind("click", foo); // ... 當點擊段落的時候會觸發 foo 
$("p").unbind("click", foo); // ... 再也不會被觸發 foo


五.常用事件函數舉例

1.bind( type, [data], fn ) 函數舉例

bind()是最常使用的函數,  注意方法簽名上data參數, 可以在事件處理之前傳遞一些附加的數據:

function handler(event) {
  alert(event.data.foo);
}
$("p").bind("click", {foo: "bar"}, handler) 


注意event參數的使用. jQuery中統一了事件對象, 將事件對象作為事件處理函數的唯一參數傳遞.

data參數我們也要通過event.data 進行訪問.  為何要提供data參數呢?

因為我們經常碰到這樣的問題: 希望在事件處理中根據事件源的某些數據進行特殊處理.

目前網上有兩種存在爭議的解決方法:

(1) 使用自定義元素屬性存儲數據.

比如:

<div id="testDiv5" customer="customer data 1">獲取自定義數據-1</div>


 

在事件處理函數中獲取數據:

$("#testDiv5").bind("click", function(event) { alert($(event.target).attr("customer")); });


attr函數是上一講中的知識, 用于獲取元素的"元素屬性", 而且可以獲取自定義的元素屬性. 單擊div后將顯示:

image

 

(2) 使用腳本將數據傳遞給事件處理函數:

<div id="testDiv6">獲取自定義數據-2</div>


元素沒有任何的自定義屬性, 添加事件處理函數時將額外的數據傳遞:

$("#testDiv6").bind("click", { customer: "customer data 2" }, function(event) { alert(event.data.customer) });


點擊div后的結果和方法1相同:

image

方法1便于存儲和查找數據. 但是自定義屬性通過不W3C驗證.

方法2必須要自己想辦法存儲數據, 并且要制定規則查找指定元素的數據.

從"開發人員"的角度方法1要更加簡單直觀. 但是缺點比較嚴重. 所以如何取舍請大家自己決定.

one( type, [data], fn ) 函數和bind一樣, 但是只執行一次.

2. trigger( event, [data] )  triggerHandler( event, [data] )

雖然為元素綁定了某些事件, 比如click, 但是有時希望在程序中觸發這些事件,  這兩個函數可以實現此功能.

主要區別是trigger會出發瀏覽器默認的動作, 而triggerHandler不會出發.

通過下面的實例可以明確的區分這兩個函數:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head>     <title>jQuery事件處理:trigger和triggerHandler示例</title>     <script type="text/javascript" src="scripts/jquery-1.3.2-vsdoc2.js"></script>     <script type="text/javascript">
        $(function()
        {
            $("#old").click(function()
            {
                $("#divResult").html("");
                $("input").trigger("focus");
            });
            $("#new").click(function()
            {
                $("#divResult").html("");
                $("input").triggerHandler("focus");
            });
            $("input").focus(function() { $("<span>Focused!</span>").appendTo("#divResult"); });
        })

    </script> </head> <body>     <button id="old">         .trigger("focus")</button>     <button id="new">         .triggerHandler("focus")</button><br />     <br />     <input type="text" value="To Be Focused" />     <div id="divResult"></div> </body> </html>


 

當單擊".trigger"按鈕時, 會調用兩次Focesed, 并且input元素獲得了焦點:

image

單擊".triggerHandler"按鈕時, 只調用一次,并且input元素沒有獲得焦點:

image

也就是說, trigger函數出發了瀏覽器默認的獲取焦點的行為,讓input元素獲得了焦點, 所以再次調用了focus事件處理函數.

triggerHandler只調用為focus事件綁定的事件處理函數, 而不引發瀏覽器行為, 所以最后input元素沒有獲得焦點.

 

六.快捷事件 Event Helpers 

BUG提示:jquery-1.3.2-vsdoc2.js 這個的官方帶智能提示的類庫, 無法使用快捷事件, 比如click(), focus(). 使用其他版本的類庫則沒有問題.

雖然我們可以使用事件處理函數完成對象事件的幾乎所有操作, 但是jQuery提供了對常用事件的封裝. 比如單擊事件對應的兩個方法click()和click(fn)分別用來觸發單擊事件和設置單擊事件.

設置單擊事件:

$("#testDiv").click(function(event) { alert("test div clicked ! "); });


等效于:

$("#testDiv").bind("click", function(event) { alert("test div clicked ! "); });

觸發單擊事件:

$("#testDiv").click();


等效于

$("#testDiv").trigger("click");

 

注意這里等效的是trigger而不是triggerHandler.

此類方法在jQuery中英文叫做Event Helpers, 我找不到很好的翻譯方式, 所以按照功能稱其為"快捷方法",  征集好的翻譯名稱!

下面是jQuery的快捷方法列表:

由于都是都是對應的事件, 所以不再寫說明和舉例了.

名稱 說明 舉例
blur( )    
blur( fn )    
change( )    
change( fn )    
click( )    
click( fn )    
dblclick( )    
dblclick( fn )    
error( )    
error( fn )    
focus( )    
focus( fn )    
keydown( )    
keydown( fn )    
keypress( )    
keypress( fn )    
keyup( )    
keyup( fn )    
load( fn )    
mousedown( fn )    
mouseenter( fn )    
mouseleave( fn )    
mousemove( fn )    
mouseout( fn )    
mouseover( fn )    
mouseup( fn )    
resize( fn )    
scroll( fn )    
select( )    
select( fn )    
submit( )    
submit( fn )    
unload( fn )    

 

七. 交互幫助方法

除了基本的實踐, jQuery提供了兩個和事件相關的幫助方法: hover( over, out )  toggle( fn, fn2, fn3,fn4,... )

1. hover( over, out ) 

hover函數主要解決在原始javascript中mouseover和mouseout函數存在的問題, 看下面這個示例:

image

有兩個div(紅色區域), 里面分別嵌套了一個div(黃色區域). HTML代碼如下:

    <div class="outer" id="outer1">       Outer 1
      <div class="inner" id="inner1">Inner 1</div>     </div>     <div class="outer" id="outer2">       Outer 2
      <div class="inner" id="inner2">Inner 2</div>     </div>     <div id="console"></div>

 

綁定如下事件:

    <script type="text/javascript">       function report(event) {
        $('#console').append('<div>'+event.type+'</div>');
      }

      $(function(){
        $('#outer1')
         .bind('mouseover',report)
         .bind('mouseout',report);
        $('#outer2').hover(report,report);
      });
    </script>


Outer1我們使用了mouseover和mouseout事件,  當鼠標從Outer1的紅色區域移動到黃色區域時, 會發現雖然都是在outer1的內部移動, 但是卻觸發了mouseout事件:

image

很多時候我們不希望出現上圖的結果,  而是希望只有鼠標在Outer1內部移動時不觸發事件, Outer2使用Hover()函數實現了這個效果:

image

注意這里的事件名稱進入叫做"mouseenter", 離開叫做"mouseleave", 而不再使用"mouseover"和"mouseleave"事件.

有經驗的開發人員會立刻想到在制作彈出菜單時, 經常遇到這個問題: 為彈出菜單設置了mouseout事件自動關閉, 但是鼠標在彈出菜單內移動時常常莫名其妙觸發mouseout事件讓菜單關閉. hover()函數幫助我們很好的解決了這個問題.

2. toggle( fn, fn2, fn3,fn4,... )

toggle函數可以為對象添加click事件綁定函數,  但是設置每次點擊后依次的調用函數。

如果點擊了一個匹配的元素,則觸發指定的第一個函數,當再次點擊同一元素時,則觸發指定的第二個函數,如果有更多函數,則再次觸發,直到最后一個。隨后的每次點擊都重復對這幾個函數的輪番調用。

可以使用unbind("click")來刪除。

下面的示例演示如何使用toggle函數:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head>     <title>toggle example</title>     <link rel="stylesheet" type="text/css" href="css/hover.css">     <script type="text/javascript" src="scripts/jquery-1.3.2-vsdoc2.js"></script>     <script type="text/javascript">
        $(function()
        {
            $("li").toggle(
              function()
              {
                  $(this).css({ "list-style-type": "disc", "color": "blue" });
              },
              function()
              {
                  $(this).css({ "list-style-type": "square", "color": "red" });
              },
              function()
              {
                  $(this).css({ "list-style-type": "none", "color": "" });
              }
            );
        })
    </script> </head> <body>     <ul>         <li style="cursor:pointer">click me</li>     </ul> </body> </html>


結果是每點擊一次"click me"變換一次列表符號和文字顏色.


八.使用jQuery事件對象

使用事件自然少不了事件對象.  因為不同瀏覽器之間事件對象的獲取, 以及事件對象的屬性都有差異, 導致我們很難跨瀏覽器使用事件對象.

jQuery中統一了事件對象,  當綁定事件處理函數時,  會將jQuery格式化后的事件對象作為唯一參數傳入:

$("#testDiv").bind("click", function(event) {  });


關于event對象的詳細說明, 可以參考jQuery官方文檔: http://docs.jquery.com/Events/jQuery.Event

jQuery事件對象將不同瀏覽器的差異進行了合并, 比如可以在所有瀏覽器中通過 event.target 屬性來獲取事件的觸發者(在IE中使用原生的事件對象, 需要訪問event.srcElement).

下面是jQuery事件對象可以在擴瀏覽器支持的屬性:

屬性名稱 描述 舉例
type
事件類型.如果使用一個事件處理函數來處理多個事件, 可以使用此屬性獲得事件類型,比如click.
$("a").click(function(event) {
  alert(event.type);
});
target
獲取事件觸發者DOM對象
$("a[href=http://google.com]").click(function(event) {
  alert(event.target.href);
});
data
事件調用時傳入額外參數.
$("a").each(function(i) {
  $(this).bind('click', {index:i}, function(e){
     alert('my index is ' + e.data.index);
  });
});
relatedTarget
對于鼠標事件, 標示觸發事件時離開或者進入的DOM元素
$("a").mouseout(function(event) {
  alert(event.relatedTarget);
});
currentTarget
冒泡前的當前觸發事件的DOM對象, 等同于this.
$("p").click(function(event) {
  alert( event.currentTarget.nodeName );
});

結果:P
pageX/Y
鼠標事件中, 事件相對于頁面原點的水平/垂直坐標.
$("a").click(function(event) {
  alert("Current mouse position: " + event.pageX + ", " + event.pageY );
});
result
上一個事件處理函數返回的值
$("p").click(function(event) {
  return "hey"
});
$("p").click(function(event) {
  alert( event.result );
});

結果:"hey"
timeStamp
事件發生時的時間戳.
var last;
$("p").click(function(event) {
   if( last )
      alert( "time since last event " + event.timeStamp - last );
   last = event.timeStamp;
});

上面是jQuery官方文檔中提供的event對象的屬性. 在"jQuery實戰"一書中還提供了下面的多瀏覽器支持的屬性, 時間關系我沒有嘗試每一個屬性, 大家可以幫忙驗證是否在所有瀏覽器下可用:

屬性名稱 描述 舉例
altKey Alt鍵是否被按下. 按下返回true  
ctrlKey ctrl鍵是否被按下, 按下返回true  
metaKey Meta鍵是否被按下, 按下返回true. 
meta鍵就是PC機器的Ctrl鍵,或者Mac機器上面的Command鍵
 
shiftKey Shift鍵是否被按下, 按下返回true  
keyCode 對于keyup和keydown事件返回被按下的鍵. 不區分大小寫, a和A都返回65. 

對于keypress事件請使用which屬性, 因為which屬性跨瀏覽時依然可靠.
 
which 對于鍵盤事件, 返回觸發事件的鍵的數字編碼. 對于鼠標事件, 返回鼠標按鍵號(1左,2中,3右).  
screenX/Y 對于鼠標事件, 獲取事件相對于屏幕原點的水平/垂直坐標  

 

事件對象除了擁有屬性, 還擁有事件. 有一些是一定會用到的事件比如取消冒泡 stopPropagation() 等.下面是jQuery事件對象的函數列表:

名稱 說明 舉例
preventDefault()
取消可能引起任何語意操作的事件. 比如<a>元素的href鏈接加載, 表單提交以及click引起復選框的狀態切換.
$("a").click(function(event){
  event.preventDefault();
  // do something
});
isDefaultPrevented()
是否調用過
preventDefault()
方法
$("a").click(function(event){
  alert( event.isDefaultPrevented() );
  event.preventDefault();
  alert( event.isDefaultPrevented() );
});
stopPropagation()
取消事件冒泡
$("p").click(function(event){
  event.stopPropagation();
  // do something
});
isPropagationStopped()
是否調用過
stopPropagation()
方法
$("p").click(function(event){
  alert( event.isPropagationStopped() );
  event.stopPropagation();
  alert( event.isPropagationStopped() );
});
stopImmediatePropagation()
取消執行其他的事件處理函數并取消事件冒泡. 

如果同一個事件綁定了多個事件處理函數, 在其中一個事件處理函數中調用此方法后將不會繼續調用其他的事件處理函數.
$("p").click(function(event){
  event.stopImmediatePropagation();
});
$("p").click(function(event){
  // This function won't be executed
});
isImmediatePropagationStopped()
是否調用過
stopImmediatePropagation()
方法
$("p").click(function(event){
  alert( event.isImmediatePropagationStopped() );
  event.stopImmediatePropagation();
  alert( event.isImmediatePropagationStopped() );
});


這些函數中  stopPropagation()  是我們最長用的也是一定會用到的函數. 相當于操作原始event對象的event.cancelBubble=true來取消冒泡.

 

九. 總結

事件是javascript的靈魂, 我花了很久寫這篇文章,翻譯jQuery官方的API文檔. 列表中的很多例子直接從官網上摘抄的,  有些列表中的方法我也沒有用過, 所以如果大家發現問題請及時通知我修改.

接下來的文章將分別講解Ajax和動畫效果.  最后通過講解兩個我修改的jQuery插件來學習jQuery的插件開發.

 


出品公司:

藍藍設計(北京蘭亭妙微科技有限公司)是一家專注而深入的設計機構 ,為期望卓越的國內外企業提供有效的視覺設計、ui界面設計、網站建設、用戶體驗服務,涉及互聯網、IT軟件、電子、銀行、保健品等多個行業,并建立了良好的口碑,積累了豐富的經驗。 
全國統一服務熱線  400-608-6026  QQ:896757335

 

日歷

鏈接

個人資料

藍藍設計的小編 http://www.73404.com.cn

存檔

主站蜘蛛池模板: 日本三级视频在线 | 国产成人精品一区二区 | 韩日激情视频 | 精品国产三级a∨在线欧美 一本加勒比hezyo无码专区 | 欧美精品偷自拍另类在线观看 | zzijzzij亚洲日本成熟少妇 | 欧美成人一区二区三区 | 日韩精品中字 | a免费视频 | 99久久无色码中文字幕婷婷 | 国产福利一区二区三区 | 日韩精美视频 | 欧美三级精品 | 日批视频 | 国产做a视频 | 欧美第一页在线观看 | 水野朝阳av一区二区三区 | 国产午夜精品久久久久久久久久 | 国产日韩三级 | 国产伦精品一区二区三区千人斩 | 无码人妻丰满熟妇区bbbbxxxx | 亚洲一区二区无码影院 | 久久久国产精品 | 小泽玛利亚一区二区三区视频 | 永久中文字幕 | 亚洲欧美国产另类 | 久久97超碰 | 欧美女同网站 | 亚洲看片lutube在线入口 | 久久国产精品波多野结衣av | 久久综合国产精品 | 一区两区小视频 | 免费人成网站 | 人人揉人人捏人人添 | 欧美在线综合 | 国内精品久久久久伊人aⅴ 国内精品毛片 | 成人妖精视频yjsp地址 | xxxx少妇高潮毛片新婚之夜 | 欧美午夜一区 | 精品一区二区免费视频 | 成年女人午夜毛片免费视频 | 国产精品久久久久久精 | 射久久| 日韩在线观看一区二区 | 国产日韩欧美精品在线观看 | 蜜臀久久99精品久久久无需会员 | 337p日本欧洲亚洲大胆张筱雨 | 亚洲色大成网站www永久 | 国产成人精品一区二三区四区五区 | 91成人久久 | 国产乱对白刺激在线视频 | 欧洲另类一二三四区 | 青青草大香焦在线综合视频 | 日本人又黄又爽又色的图片 | 欧美三级韩国三级日本三斤 | 国产精品久久久久aaaa | xvideos成人免费中文版 | 色欲一区二区三区精品a片 四虎精品成人免费视频 | 亚洲va欧美va人人爽春色影视 | 首尔之春在线观看 | 日本成人性爱 | 寂寞的日本美妇 | 伊人伊成久久人综合网站 | 男女视频一区 | 中国黄色片视频 | 天堂在线中文 | 午夜爽爽爽爽技女8888 | 精品九九久久 | 麻豆chinese极品少妇 | 久久精品99国产精 | 青草99| 青青艹在线视频 | 中文字幕+乱码+中文字幕一区 | 天天人人综合 | 五级黄高潮片90分钟视频 | 波多野结衣免费一区视频 | 中文字日产幕码三区的做法大全 | 99精品国产在热久久婷婷 | 久久新网址| 日本大乳奶做爰 | 女女百合高h喷汁呻吟玩具 女女互揉吃奶揉到高潮视频 | 亚洲一区二区三区四区的 | 日韩色图在线观看 | 欧美老女人性生活视频 | 四色最新网址 | 亚洲码国产精品高潮在线 | 天堂亚洲| 大黄一级片 | 国产欧美日韩一区二区三区在线 | 亚洲色中文字幕在线播放 | 精品国产免费久久久久久婷婷 | 久久精品无码一区二区日韩av | 狠狠色噜噜狠狠狠狠色综合久av | 色五婷婷 | 黄色大片久久 | 男人天堂成人网 | www.国产免费 | 日本黄网在线观看 | а√资源新版在线天堂 | 在线免费成人 | 欧美老肥妇做.爰bbww视频 | 亚洲精品v天堂中文字幕 | 一级特黄aa大片免费播放 | 新婚之夜玷污岳丰满少妇在线观看 | 亚洲欧美少妇 | av资源天堂 | 国产在线看黄 | 欧美成人精品手机在线 | 蜜桃视频一区二区三区 | 中文人妻熟女乱又乱精品 | 日韩精品人妻中文字幕有码 | 国产艳妇av在线观看果冻传媒 | 粉嫩av一区二区在线播放免费 | 国产又黄又粗的视频 | 无码av中文字幕免费放 | 日韩精品亚洲人成在线观看 | 成人av一区| 欧美综合网 | 佐佐木明希av在线 | www.污在线观看 | 欧美成片vs欧美 | 久久久久青草线综合超碰 | 天堂av无码av一区二区三区 | 国产精品片aa在线观看 | 亚洲综合色丁香婷婷六月图片 | 性久久久久久久 | 一色屋精品久久久久久久久久 | 中国丰满人妻videoshd | 国产露脸无套对白在线播放 | 日本黄视频网站 | 亚洲性精品 | 日本www免费 | 爱情岛亚洲论坛入口首页 | 一区二区在线 | 欧洲 | 国产 日韩 欧美 中文 在线播放 | 日本性高潮视频 | 亚洲中文字幕无码永久在线 | 午夜精品久久久久久久蜜桃 | 人妻丰满熟妇av无码区乱 | 国产在线观看无码免费视频 | 国产一级一片免费播放 | 乱人伦xxxx国语对白 | 亚洲精品乱码久久久久久中文字幕 | 久久久精品视频一区二区三区 | 久久这里只有精品18 | 久久精品aⅴ无码中文字字幕 | 亚洲午夜福利av一区二区无码 | 国产欧洲色婷婷久久99精品91 | 国产拍揄自揄精品视频麻豆 | 国产露脸150部国语对白 | 米奇影视第四色 | 日本在线中文字幕专区 | 97国产精东麻豆人妻电影 | 欧美字幕| 人与嘼av免费| 国产乱了真实在线观看 | 男女免费视频网站 | 欧美自拍嘿咻内射在线观看 | 精品久久久久久久久久国产潘金莲 | 日本成熟老太 | 国产做爰视频免费播放 | 免费观看三级毛片 | 国产精品久久久久久久久久 | 直接看的毛片 | 27美女少妇洗澡偷拍 | 91蜜桃传媒精品久久久一区二区 | 91大尺度| 欧美综合亚洲图片综合区 | 中国白嫩丰满少妇xxxxx明星 | 台湾a级艳片潘金莲 | 久久视频这里有久久精品视频11 | 久久久久久九九99精品 | 中文日字幕无限码 | 香蕉视频免费 | 欧美亚洲图片小说 | 韩国久久久 | 久久免费国产 | 嫩草影院菊竹影院 | 亚洲区在线播放 | 那里有毛片看 | 日本精品4080yy私人影院 | 色爽交 | 91伊人网| 中国少妇裸体bbbbb | 吸咬奶头狂揉60分钟视频 | 三级网址在线 | 亚洲黄色小说视频 | 日本理伦片午夜理伦片 | 黄色激情小说网站 | av手机在线免费观看 | 国产,日韩,欧美 | 中文字幕国产日韩 | 大乳奶水成人吃91 | 中文字幕人妻熟女人妻a片 国产精品人妻系列21p | 91污网站 | 中文字幕精品无码一区二区三区 | 色综合色狠狠天天综合色 | 人妻仑乱少妇av级毛片 | 99热在线观看免费 | 国产精品成人99一区无码 | 拍真实国产伦偷精品 | 色吊丝永久性观看网站免费 | 四虎视频在线精品免费网址 | 精品国产欧美日韩 | 国产自偷自偷免费一区 | 亚洲小视频在线播放 | 波多野结衣亚洲 | 国产91av视频| 国产精品人人妻人人爽 | 99精品欧美一区二区三区小说 | 在线黄色网页 | 小嫩草张开腿让我爽了一夜 | 天天弄天天干 | 人人玩人人添人人澡超碰 | 国产高中女学生第一次 | 婷婷久久伊人 | 国产又粗又大又爽视频 | 无码人妻一区二区三区线 | 麻豆回家视频区一区二 | 神马久久久久久久久 | 日本亚洲欧洲无免费码在线 | 青青艹av| 天天躁日日躁狠狠躁一区 | 丰满少妇在线观看bd | 亚洲人吸女人奶水 | 久久艹精品 | 伊人成年网站综合网 | 91成人看片| 九九99久久精品在免费线bt | 日本少妇xx洗澡xxxx偷窥 | 国产免费拔擦拔擦8x网址 | 精品国产乱码久久久久久郑州公司 | 亚洲第一视频 | 色婷婷久久综合中文久久蜜桃av | 欧美精品日日鲁夜夜添 | 成人欧美一区二区三区1314 | 91亚洲精品久久久中文字幕 | 日躁夜躁狠狠躁2001 | 中文精品欧美无线码一区 | 国产后入又长又硬 | 99久久精品久久久久久动态片 | 与子敌伦刺激对白播放的优点 | 亚洲成人一区在线观看 | 麻豆成人久久精品二区三区小说 | 鲁鲁鲁爽爽爽在线视频观看 | 欧美日韩国产第一页 | 成人午夜免费在线观看 | 日韩人妻无码免费视频一区二区三区 | 国产精品裸体一区二区三区 | 欧美激情第1页 | 国产九九九九九九九a片 | 亚洲va欧美va人人爽午夜 | 国产精品亚洲а∨天堂免在线 | 国产国语性生话播放 | 香蕉久久夜色精品国产使用方法 | 最近中文字幕免费mv在线视频 | 丁香九月激情 | 久草在线免费福利资源 | 99久久无色码中文字幕人妻蜜柚 | www久久久com | 丁香婷婷激情综合俺也去 | 一本一本久久a久久精品综合不卡 | 日韩视频一区 | 日韩区欧美久久久无人区 | 午夜人体一级裸片免费观看 | 黄色三级毛片视频 | 激情xxxx | 日本久久久久久久久 | 亚洲精品午夜一区人人爽 | 成人免费看片又大又黄 | 好吊色综合 | 国产视频在线观看一区 | 精品视频在线播放 | 亚洲砖区免费 | 亚洲精品在 | 国产男女网站 | 久久99亚洲网美利坚合众国 | 国产不卡一区二区视频 | 美女视频黄a视频免费全程软件axs | 日日av色欲香天天综合网 | 国产伦精品一区 | 亚洲男人网 | 真人真事免费毛片 | 大尺度激情吻胸视频 | 美女被张开双腿日出白浆 | 欧美老妇人与禽交 | 黑人添美女bbb添高潮了 | 亚洲精品一二三区 | 日本一区二区三区在线视频 | 欧美日韩精品在线视频 | 精品人伦一区二区三区蜜桃视频 | 精品国产成人av在线免 | 午夜免费激情视频 | 骚虎av在线 | 天堂av√ | 日日鲁鲁鲁夜夜爽爽狠狠 | 无码人妻丰满熟妇片毛片 | 韩日精品在线观看 | 国产色视频网站 | 黄色一级带 | 国产人碰人摸人爱免费视频 | h无码动漫在线观看 | 蜜臀av性久久久久蜜臀aⅴ麻豆 | 亚洲专区在线视频 | 国产精品成人3p一区二区三区 | 久本草精品 | 天天躁日日躁狠狠躁欧美老妇小说 | 国产毛片久久 | 一区二区三区视频 | 好了av四色综合网站 | 粉嫩小泬无遮挡久久久久久 | 国产精品久久久久久久久久影院 | 日韩精品亚洲人成在线 | 天天射天天干天天操 | 激情网站在线观看 | 国产精品免费久久久久久久久久中文 | 欧美特一级 | 日本成人精品视频 | av大片免费观看 | 播播网色播播 | 亚洲午夜不卡 | 国产精品久久久久久精 | 天天躁日日躁狠狠躁av麻豆 | 国产传媒视频在线 | 天天看天天操 | 日本老熟欧美老熟妇 | 99热在| 欧美男人亚洲天堂 | 九色porny丨国产首页注册 | 免费色视频网站 | 日本黄页网站免费大全 | 久久亚洲区 | 黄色一级在线观看 | 色网综合 | 豆国产97在线 | 亚洲 | 国产无套内谢普通话对白91 | 香蕉视频在线网站 | 正在播放酒店约少妇高潮 | 777久久久精品一区二区三区 | 国产婷婷色一区二区三区在线 | 国产精品自拍合集 | 男人天堂社区 | 黄色成人在线播放 | 国产全肉乱妇杂乱视频1 | 激情综合五月网 | 国产精品性做久久久久久 | 黄色视屏在线免费观看 | 偷窥自拍999 | 亚洲www永久成人夜色 | 老熟女高潮喷水了 | 日本猛少妇色xxxxx猛交图片 | 97在线视频观看 | 亚洲国产精品视频在线观看 | 看黄网站在线观看 | 精品一区二区在线视频 | 久草成人在线视频 | 黄色喷水网站 | 欧美一级欧美三级在线观看 | 成人在线超碰 | 久久久久麻豆v国产精华液好用吗 | 欧美群交射精内射颜射潮喷 | 欧美一区免费观看 | 护士脱了内裤让我爽了一夜视频 | 国产乱子经典视频在线观看 | 97zyz成人免费视频 | 欧美黑人性暴力猛交喷水 | 午夜福利视频合集1000 | 欧美 日韩 亚洲 在线 | 在线观看国产一区二区三区 | 狠狠色丁香婷婷综合欧美 | 青青草狠狠干 | 中文字幕3| eeuss国产一区二区三区四区 | 日本高清视频网站www | 北条麻妃在线一区二区 | 日韩欧美成人免费观看 | 成人免费视频一区 | 成人免费黄色大片 | 极品久久久久 | 欧美城天堂网址 | 99久久精品无免国产免费 | 自由成熟xxxx色视频 | 天天色欧美 | 最新视频 - 8mav | 国产91在线亚洲 | 怡红院最新网址 | 国产日韩欧美综合 | 丰满少妇xbxb毛片日本 | 伊人网色| 好硬好湿好爽好深视频 | 天堂av免费| 精品视频久久久 | 久久五月天综合 | 强睡邻居人妻中文字幕 | 国产剧情久久久 | 日日婷婷夜日日天干 | 日韩一区二区三区免费 | 亚洲视频99 | 欧美人牲 | 久久艹逼| 777久久久| www.youjizz.com在线 | 欧美最猛性xxxx | jizz俄罗斯 | 夜夜爽久久揉揉一区 | 爽爽影院在线免费观看 | 日韩精品av一区二区三区 | 久久视频精品 | 吻胸摸腿揉屁股娇喘视频网站小说 | 性欧美又大又长又硬 | 日本做爰xxxⅹ高潮欧美 | 特级做a爰片毛片免费看108 | 成人小视频免费在线观看 | av女优天堂在线观看 | 波多野结衣绝顶大高潮 | 国产sm重味一区二区三区 | 亚州成人 | 亚洲高清毛片一区二区 | 午夜影院0606| 亚洲色图2| 亚洲ⅴ国产v天堂a无码二区 | 偷拍自中文字av在线 | 欧美狂野另类xxxxoooo | 亚洲国产精品无码久久青草 | h网址在线观看 | 美州a亚洲一视本频v色道 | 一个色在线 | 国产午夜成人av在线播放 | 国产人妻精品区一区二区三区 | 中文字幕日韩精品一区 | 久久婷婷伊人 | 男女作爱bbbbbbbbb | 精品国产一区二区三区久久 | 欧美大片高清 | 日本在线www | 色又黄又爽18禁免费网站现观看 | 午夜av一区二区三区 | 国产精品一级二级 | 国产香蕉视频 | 欧美一区二区三区在线播放 | 天天看天天色 | 夜爽8888视频在线观看 | 两男一前一后cao一女 | www一区| 亚洲男人天堂网址 | 亚洲狼人天堂 | 99re热在线视频 | 深夜福利免费在线观看 | 久久国产激情视频 | 国产男女激情 | 一级淫片免费 | 欧美精品二区三区四区免费看视频 | 欧美高清一区二区三区四区 | 秋霞成人| 无码熟妇人妻av在线影片 | 天天躁天天狠天天透 | 中文字幕人妻熟在线影院 | 深夜视频一区二区 | 国产粉嫩尤物极品99综合精品 | 99久久99久久久精品齐齐 | 毛片毛片毛片毛片毛片毛片毛片 | 一区二区中文字幕在线 | 日韩资源站| 中文在线免费看视频 | av大帝在线观看 | 日本中文字幕高清 | 人人插人人插 | 强行糟蹋人妻hd中文字 | 亚洲男人第一av网站 | 羞羞成人 | 日本老妇高潮乱hd | 国产丝袜一区视频在线观看 | 色依依av在线 | 中文字幕第68页 | 9久久9毛片又大又硬又粗 | 伊人狠狠色丁香婷婷综合 | 欧美激情猛片xxxⅹ大3 | 久久国产午夜精品理论片推荐 | 日本精品一区二区在线观看 | 亚洲欧美在线另类 | 国产精品成人一区二区三区 | 日本乱码一区二区三区芒果 | 亚洲伊人成综合网 | 日韩精品中字 | 偷拍久久久 | 久久夜色精品亚洲噜噜国产mv | 中国黄色网址 | 国产99久久久国产精品成人免费 | 国产素人在线观看 | 在线观看日批视频 | 小辣椒福利视频导航 | 国产欧洲精品亚洲午夜拍精品 | 欧美大白腚pics | 少妇精品无码一区二区免费视频 | 中文字幕第一页av | 在线国产中文字幕 | 日本人与禽zozzo小小的几孑 | 一级片在线放映 | 亚洲日本久久 | 欧美三日本三级三级在线播放 | 成年人黄色小视频 | 韩国和日本免费不卡在线v 婷婷俺也去俺也去官网 | 免费毛片看片 | 成人精品亚洲人成在线 | 8888四色奇米在线观看 | 狠狠入 | 国产综合福利 | 九九九在线观看 | 国产精品网站在线观看免费传媒 | 国产孕妇视频 | 自拍99 | 老女人老91妇女老热女 | 婷婷综合少妇啪啪喷水 | 藏精阁成人免费观看在线视频 | 免费一区 | 日本肥老妇色xxxxx日本老妇 | 91禁蘑菇在线看 | 久久精品色欧美aⅴ一区二区 | 少妇乱淫aaa高清视频真爽 | 亚洲国产精品97久久无色 | 国产大学生av | 一本久久a久久精品vr综合 | 大尺度无遮挡激烈床震网站 | www色多多| 国内毛片毛片毛片毛片毛片 | 一区二区欧美在线 | 伊人久久精品视频 | 亚洲天堂在线观看视频 | 男人天堂1024 | 狠狠综合久久av一区二区老牛 | 韩国三级丰满少妇高潮 | 无码人妻aⅴ一区二区三区69岛 | 在线蜜桃 | 毛片哪里看 | 中文在线视频观看 | 91精品国产乱码在线观看 | 四虎影视成人永久免费观看亚洲欧美 | 日韩亚洲欧美一区 | 中文字幕不卡在线88 | 性歌舞团一区二区三区视频 | av在线看片 | 九色丨porny丨自拍视频 | 久久婷婷国产色一区二区三区 | 美女隐私免费看 | 福利cosplayh裸体の福利 | 亚洲日韩欧洲乱码av夜夜摸 | 国产aⅴ夜夜欢一区二区三区 | 伊人久久大香线蕉av色 | 亚洲免费视频在线观看 | 亚洲日韩中文第一精品 | 亚洲欧美网 | 91精品大片| 欧美日韩va | 啪啪在线观看 | 久久99国产综合精品 | 一级坐爱片 | 精品国产一区二区三区av性色 | 青青草久久伊人 | 中国美女一级黄色片 | 韩国三级欧美三级国产三级 | 伊人精品成人久久综合 | 国产精华av午夜在线观看 | 色婷婷国产精品久久包臀 | 红杏出墙记 | 狼人无码精华av午夜精品 | 午夜亚洲一区 | 女人舌吻男人茎视频 | 福利在线免费 | 国产a在亚洲线播放 | 在线观看精品黄av片免费 | jizzjizz黄大片 | 中文字幕人妻高清乱码 | 88xx成人精品视频 | 经典国产乱子伦精品视频 | 日韩美女一区二区三区 | 欧美精品偷自拍另类在线观看 | 欧洲美熟女乱又伦av | 欧美自拍嘿咻内射在线观看 | 综合网久久 | 欧美在线视频免费观看 | 欧美一级视频 | 国产一区二区三区在线免费 | 国产精品一二三四区 | www777色| 少妇在线 | 国产精品天天av精麻传媒 | 亚洲国产成人无码av在线影院 | 国产午夜福利片 | 国产精品久久久久久久白丝制服 | 中国xxxx性xxxx产国 | 欧美视频一二三区 | 永久免费未满蜜桃 | 欧美精品成人影院 | 国产成人高清在线 | 国产免费视屏 | 伊人焦久影院 | 国产一区二区三区在线观看视频 | 日韩内射美女人妻一区二区三区 | 欧美区一区二区 | 香蕉视频黄在线观看 | 欧美性生活视频 | 国产精品毛片久久久久久久 | 中文字幕av日韩精品一区二区 | 国产原创视频在线观看 | 久久精品www人人爽人人 | 日日爱886| 久久接色 | 水蜜桃av无码 | 少妇浴室精油按摩2 | 免费在线观看日韩av | 性欧美在线视频观看 | 疯狂少妇 | 欧美在线一二 | 国产一级自拍视频 | 国产精品毛片无遮挡高清 |