伊人久久大香线蕉综合影视_日韩精品少妇无码受不了_71pao成人国产永久免费视频_国产伦片中文免费观看_国产高清无码麻豆精品_九色综合伊人久久富二代_日韩黄色精品_日韩A∨精品日韩精品无码

jQuery XML 解析器和搜索機(jī)制

2016-10-18    藍(lán)藍(lán)設(shè)計(jì)的小編

如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中, 請點(diǎn)這里

 

介紹

這里所描述的過程將使你能夠創(chuàng)建一個(gè)簡單的基于jQuery / XML的解析器和搜索機(jī)制。此過程將通過一個(gè)AJAX請求檢索XML,然后在jQuery中分析數(shù)據(jù),為搜索機(jī)制做準(zhǔn)備。該解決方案將基于不區(qū)分大小寫的全部或部分關(guān)鍵字匹配地返回結(jié)果。來自于關(guān)鍵字搜索的返回結(jié)果設(shè)置將被格式化為一個(gè)直接鏈接到相應(yīng)網(wǎng)站的超鏈接。jQuery搜索方法非常類似于Mike Endale的一個(gè)項(xiàng)目,不過增加了一個(gè)DOM解析器,正則表達(dá)式以及結(jié)果集分組。

背景

客戶端需要一個(gè)簡單的搜索工具來查找基于關(guān)鍵字搜索的本地內(nèi)部網(wǎng)站。關(guān)鍵字搜索必須不區(qū)分大小寫,并允許返回部分匹配的結(jié)果。歸咎于客戶端內(nèi)容管理系統(tǒng)的架構(gòu),因此(SharePoint)只能執(zhí)行客戶端腳本。其解決方案的另一個(gè)障礙是,源數(shù)據(jù)將來自多個(gè)源。數(shù)據(jù)被存儲在多個(gè)Excel電子表格,CSV文件和MS Access數(shù)據(jù)庫內(nèi)。這就對我們提出了這樣的需要:開發(fā)具有一系列查詢和一個(gè)宏的Access解決方案,充當(dāng)可合并、擦洗,并最后格式化數(shù)據(jù)作為XML輸出的偽ETL。對于這個(gè)解決方案的目的,我們將詳細(xì)介紹JavaScript XML分析器的設(shè)計(jì),而不是偽Access ETL宏工具的設(shè)計(jì)。

使用代碼

該解決方案的做法是利用一個(gè)簡單的基于JavaScript / XML的搜索來發(fā)送數(shù)據(jù)結(jié)果到HTML / JavaScript前端。前端將引用腳本:jQuery,XML和CSS文件。XML格式將因?yàn)樗目勺x性和它是數(shù)據(jù)交換行業(yè)標(biāo)準(zhǔn)格式之一的事實(shí)而被使用。 XML數(shù)據(jù)將通過使用AJAX的客戶端jQuery解析,并通過Internet Explorer 11呈現(xiàn)。

解決方案將使用RegExp對象來處理關(guān)鍵字匹配,驗(yàn)證和特殊字符處理。RegExp對象字符串將檢查危險(xiǎn)語法從而提高解決方案的穩(wěn)定性和整體可用性。

我們將默認(rèn)使用JavaScript分組功能來返回匹配結(jié)果作為折疊的紀(jì)錄集。折疊的記錄集線項(xiàng)目將被URL鏈接到相關(guān)的Project Workspace網(wǎng)站。在擴(kuò)展的組記錄集下,結(jié)果將存在于相關(guān)的子記錄中,當(dāng)通過On Click事件展開的時(shí)候。

信息架構(gòu)

解析器函數(shù)有一個(gè)復(fù)雜的帶有節(jié)點(diǎn)和屬性的層次XML樹,并且將它轉(zhuǎn)變成等價(jià)的JavaScript對象和屬性??蛻舳嘶贘avaScript / XML的搜索需要經(jīng)過以下步驟:

1.偽ETL工具準(zhǔn)備數(shù)據(jù)到XML文件(本項(xiàng)目不包括這一步驟)

2.此XML文件加載到指定的位置(本項(xiàng)目不包括這一步驟)

3.在點(diǎn)擊事件發(fā)生時(shí),JavaScript解析器將使用AJAX方法加載XML數(shù)據(jù)

4.檢查搜索中關(guān)鍵字的存在

  • 如果沒有關(guān)鍵字存在拋出錯(cuò)誤消息“Please enter a search keyword”

5.如果有節(jié)點(diǎn)包含URL屬性的字符串,那么節(jié)點(diǎn)加入到數(shù)組中。

6.RegExp對象關(guān)鍵字通過替代匹配特殊字符處理

7.RegExp對象關(guān)鍵字匹配轉(zhuǎn)換為不區(qū)分大小寫

8.循環(huán)數(shù)組匹配基于驗(yàn)證的RegExp對象

  • 如果沒有結(jié)果,那就拋出錯(cuò)誤消息“No results were found!”

9.用斑馬條紋的奇數(shù)和偶數(shù)行對組構(gòu)建結(jié)果集

10.用相關(guān)的Work Order構(gòu)建組匹配PPID行作為子組

11.填充結(jié)果,然后將它們傳遞到最后呈現(xiàn)的集合

12.顯示具有列和所有分組標(biāo)題的結(jié)果集合

  • 分組在默認(rèn)情況下折疊

用戶界面

用戶界面是一個(gè)簡單的基于HTML / JavaScript客戶端搜索來返回關(guān)鍵字匹配結(jié)果——默認(rèn)為折疊和分組的記錄集合。以行項(xiàng)目顯示的折疊紀(jì)錄集合直接URL鏈接到相關(guān)項(xiàng)目的網(wǎng)站。在擴(kuò)展組記錄集合下,結(jié)果在On Click事件擴(kuò)大時(shí)將保留相關(guān)的子記錄。

內(nèi)嵌頁面引用

我們需要做的第一件事是引用我們的腳本:jQuery,XML和CSS文件。

<link rel="stylesheet" href="path/default.css" /> <script type="text/javascript" src="path/jquery-1.4.2.min.js"></script> <script id="data" type="text/javascript" src="path/search.js" xmlData="data.xml"></script> <input id="term" type="text"/> < input name="Search" id="searchButton" type="button" value="Search"/> <div id="result">< /div>

你會發(fā)現(xiàn)我們已經(jīng)添加了xmlData屬性到search.js引用。這是傳遞來自于HTML文件的XML文件位置的最佳方式。如果你有你有多個(gè)項(xiàng)目xml文件想要用作為數(shù)據(jù)源的話,那么這就很有幫助。

XML數(shù)據(jù)源

XML數(shù)據(jù)源可以以任何方式或任何大小來構(gòu)造;但建議保持源XML文件小于1 MB,以便于保持適當(dāng)?shù)姆治銎黜憫?yīng)時(shí)間。下面是XML源用于此項(xiàng)目的一個(gè)例子:

<?xml version="1.0" encoding="UTF-8"?> <dataroot generated="2015-11-20T10:30" xmlns:od="urn:schemas-microsoft-com:officedata"> <etl> <PPID Lead="Slow,Roy" Description="NORTH OF FAIR" PID="P002"> <WO Description="SHELTON - BANK (SAFETY)" PM="Slow,Roy" Status="CLOSED" WID="305577" WOXREF="SHEL" Program="REINFORCEMENT"> </WO> <Archive>Archived</Archive> <record search="P002NORTH OF FAIRSHELSHELTON 305577SHELTON - BANK (SAFETY)Slow,Roy"/> <url address="P002"/> </PPID> </etl> </dataroot>

錯(cuò)誤處理

對于這個(gè)項(xiàng)目,我們已經(jīng)在兩個(gè)關(guān)鍵領(lǐng)域使用過錯(cuò)誤處理。如果沒有關(guān)鍵字存在,那么錯(cuò)誤消息“Please enter a search keyword”將出現(xiàn)。如果沒有個(gè)結(jié)果生成,則拋出錯(cuò)誤消息“No results were found!”。

//Check if a keyword exists if (keyword == '') {
      errMsg += 'Please enter a search keyword';
    } else {
      searchThis();
    }
if (i == 0) { pub += '< div>'; pub += 'No results were found!'; pub += '< /div>';

使用jQuery AJAX請求

我們將通過預(yù)定義的能在頁面級別啟用的jQuery庫通過異步JavaScript函數(shù)調(diào)用XML。 AJAX的全稱是“異Asynchronous JavaScript and XML”,由Jesse James Garrett,Adaptive Path的創(chuàng)始人所杜撰。AJAX依賴于XMLHttpRequest,CSS,DOM和其他技術(shù)。AJAX的主要特點(diǎn)是它的“異步”性質(zhì),這意味著它可以從服務(wù)器而無需刷新頁面來發(fā)送和接收數(shù)據(jù)。在異步模式中,客戶端和服務(wù)器會獨(dú)立地工作,以及獨(dú)立地進(jìn)行通信,從而允許用戶持續(xù)與網(wǎng)頁交互,不管服務(wù)器上發(fā)生了什么。

function searchThis() {
  $.ajax({
    type: "GET",
    url: XMLSource,
    dataType: "xml",
    success: function (xml) {
      loadPublication(xml)
    }
  });
}

使用DOM解析和正則表達(dá)式

由于jQuery本身不能解析XML字符串;我們將充分利用瀏覽器的DOM解析方法——大多數(shù)瀏覽器以這種或那種形式支持?;鸷珻hrome,Safari以及的Internet Explorer瀏覽器均支持這種方法,它們都具有DOMParser對象。較早的Internet Explorer瀏覽器(如IE 8)使用其專有的ActiveX對象。可以創(chuàng)建跨瀏覽器的解決方案,來檢查是否缺少DOMParser,但這超出了這個(gè)項(xiàng)目的范圍,但是可能以后在額外的跨瀏覽器支持中會添加。

知道JavaScript RegExp(正則表達(dá)式)功能和語法來處理任意特殊字符。同時(shí)通過定義正則表達(dá)式來忽略大小寫,以便于在關(guān)鍵字搜索時(shí)更加友好。

function loadPublication(xmlData) {
  i = 0; var row; var searchExp = ""; var ppid = "P";

  $(xmlData).find('PPID').each(function () { // Check if a site URL attr exists if($(this).find('url').attr('address').length) { //Set the search string Variables var record          = $(this).find('record').attr('search'); var archive         = $(this).find('Archive'); //Escape characters in keyword expression and use global match RegExp.escape = function(keyword) { return keyword.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&");
              }; //Keyword expression will be case agnostic var exp = new RegExp(keyword, "i"); //Use formated keyword as the default search searchExp = record.match(exp); //If the search expression is not null if (searchExp != null) { //Start building the result if ((i % 2) == 0) {
              row = 'even';
              } else {
              row = 'odd';
              } if($(this).attr('PID') != ppid) {
                  ppid = $(this).attr('PID');

                  i++;

分組返回結(jié)果

用戶界面是一個(gè)簡單的基于HTML / JavaScript客戶端搜索來返回關(guān)鍵字匹配結(jié)果默認(rèn)為折疊又分組的記錄集合。以行項(xiàng)目顯示的折疊紀(jì)錄集合直接URL鏈接到相關(guān)項(xiàng)目的網(wǎng)站。在擴(kuò)展組記錄集合下,結(jié)果在On Click事件擴(kuò)大時(shí)將保留相關(guān)的子記錄。

//Grouping of the results function expgroupby(e) {
    docElts=document.all;
    numElts=docElts.length;
    images = e.getElementsByTagName("IMG");
    img=images[0];
    srcPath=img.src;
    index=srcPath.lastIndexOf("/");
    imgName=srcPath.slice(index+1); var b="auto"; if(imgName=="plus.gif"){
        b="";
        img.src="/_layouts/images/minus.gif" }else{
        b="none";
        img.src="/_layouts/images/plus.gif" }
    oldName=img.name;
    img.name=img.alt;
    spanNode=img; while(spanNode!=null){
        spanNode=spanNode.parentNode; if(spanNode!=null&&spanNode.id!=null&&spanNode.id=="wrapper")break } while(spanNode.nextSibling!=null&&spanNode.nextSibling.id!="wrapper"){
        spanNode=spanNode.nextSibling;
        spanNode.style.display=b;
    }
}

完整的源代碼

下面是這個(gè)項(xiàng)目完整的源代碼例子。

//Full source $(document).ready(function () { //Global Variables var XMLSource = $('#data').attr('xmlData'); var keyword = ''; var pub = ''; var i = 0;

  $("#searchButton").click(function () {
    keyword = $("input#term").val(); //Reset any message var errMsg = '';
    pub = ''; //Check if a keyword exists if (keyword == '') {
      errMsg += 'Please enter a search keyword';
    } else {
      searchThis();
    } if (errMsg != '') {
      pub += '< div>';
      pub += errMsg;
      pub += '< /div>';
    } //Show error $('#result').html(pub);

  }); //Use enter key to trigger the search query  $("input#term").keypress(function (e) { var key = e.which; if (key == 13){
     $("#searchButton").click(); return false;
    }
  }); function searchThis() {
    $.ajax({
      type: "GET",
      url: XMLSource,
      dataType: "xml",
      success: function (xml) {
        loadPublication(xml)
      }
    });
  } function loadPublication(xmlData) {
    i = 0; var row; var searchExp = ""; var ppid = "P";     

    $(xmlData).find('PPID').each(function () { // Check if a site URL attr exists  if($(this).find('url').attr('address').length) { var record   = $(this).find('record').attr('search'); var archive  = $(this).find('Archive'); //Escape characters in keyword expression and use global match  RegExp.escape = function(keyword) { return keyword.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&");
                }; //Keyword expression will be case agnostic var exp = new RegExp(keyword, "i"); //Use formated keyword as the default search searchExp = record.match(exp); //If the search expression is not null if (searchExp != null) { //Start building the result if ((i % 2) == 0) {
            row = 'even';
                } else {
            row = 'odd';
                } if($(this).attr('PID') != ppid) {
                    ppid = $(this).attr('PID');

                    i++; //Grouped header row with URL links from the xml attr pub += '< tr id="wrapper"code-string" style="margin: 0px; padding: 0px; border: 0px; color: rgb(128, 0, 128);">'">'   
    + '< td colspan="8">'
    + '< a onclick="javascript:expgroupby(this);return false;" href="javascript:">'
    + '< img name="collapse" alt="expand" src="/_layouts/images/plus.gif" border="0" />< /a>'
    + '< a href="http://project.com/sites/tp/Projects/' + $(this).find('url').attr('address') + '">' + '  ' + $(this).attr('PID')+ ' - ' + $(this).attr('Description') + ' - ' + $(this).attr('Lead') + '< /a>< /td>' + '</tr>';

    } //Bottom grouped expand detail fields pub += '<tr id="item" style="display: none;">' + '< td valign="top">' + $(this).find('WO').attr('WID') + '< /td>' + '< td valign="top">' + $(this).find('WO').attr('Description') + '< /td>' + '< td valign="top">' + $(this).find('WO').attr('PM') + '< /td>' + '< td valign="top">' + $(this).find('WO').attr('Status') + '< /td>' + '< td valign="top">' + $(this).find('WO').attr('WOXREF') + '< /td>' + '< td valign="top">' + $(this).find('WO').attr('Program') + '< /td>' + '< td valign="top">' + $(this).find('Archive').text() + '< /td>' + '< /tr>';           
        }
    }
}); if (i == 0) {
      pub += '< div>';
      pub += 'No results were found!';
      pub += '< /div>'; //Populate the result $('#result').html(pub);
    } else { //Pass the result set showResult(pub);
    }
  } function showResult(resultSet) { //Show the result with the titles of the column fields pub = '< div>There are ' + i + ' results!< /div>';
    pub += '< table id="grid" border="0">';
    pub += '< thead>< tr>< td>< th>PPID - Project Description - Lead PM< /th>< /td>< /tr>';
    pub += '< tr>< th>WO Number< /th>';
    pub += '< th>WO Description< /th>';
    pub += '< th>Project Manager< /th>';
    pub += '< th>Status< /th>';
    pub += '< th>XRef< /th>';
    pub += '< th>Program< /th>';
    pub += '< th>Archive Status< /th>';
    pub += '< /tr>< /thead>';
    pub += '< tbody>';

    pub += resultSet;

    pub += '< /tbody>';
    pub += '< /table>'; //Populate the results $('#result').html(pub)

    $('#grid').tablesorter();
  }
}); //Grouping of the results function expgroupby(e) {
    docElts=document.all;
    numElts=docElts.length;
    images = e.getElementsByTagName("IMG");
    img=images[0];
    srcPath=img.src;
    index=srcPath.lastIndexOf("/");
    imgName=srcPath.slice(index+1); var b="auto"; if(imgName=="plus.gif"){
        b="";
        img.src="/_layouts/images/minus.gif" }else{
        b="none";
        img.src="/_layouts/images/plus.gif" }
    oldName=img.name;
    img.name=img.alt;
    spanNode=img; while(spanNode!=null){
        spanNode=spanNode.parentNode; if(spanNode!=null&&spanNode.id!=null&&spanNode.id=="wrapper")break } while(spanNode.nextSibling!=null&&spanNode.nextSibling.id!="wrapper"){
        spanNode=spanNode.nextSibling;
        spanNode.style.display=b;
    }
}
 
 
 

 藍(lán)藍(lán)設(shè)計(jì)m.cqzjtgb.com )是一家專注而深入的界面設(shè)計(jì)公司,為期望卓越的國內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制  用戶體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 、平面設(shè)計(jì)服務(wù) 

 

日歷

鏈接

個(gè)人資料

存檔

国产黄色视频一区二区在线观看| 在线看a的网站| 日韩人妻高清精品专区| av免费观看日本| xxx大片免费视频| 久久精品久久精品一区二区三区| a 毛片基地| 亚洲不卡免费看| 欧美高清成人免费视频www| 我的老师免费观看完整版| 色婷婷av一区二区三区视频| 成人无遮挡网站| 久久久久久久大尺度免费视频| 青春草视频在线免费观看| 日本免费在线观看一区| 日日撸夜夜添| 性色avwww在线观看| 九九爱精品视频在线观看| 国产精品99久久久久久久久| 一区在线观看完整版| 搡老乐熟女国产| 亚洲国产精品成人久久小说| 欧美97在线视频| 99视频精品全部免费 在线| 亚洲熟女精品中文字幕| 国精品久久久久久国模美| 国产69精品久久久久777片| 80岁老熟妇乱子伦牲交| 午夜福利网站1000一区二区三区| 精品久久国产蜜桃| 丝袜脚勾引网站| tube8黄色片| av天堂中文字幕网| 一本色道久久久久久精品综合| 好男人视频免费观看在线| 欧美成人精品欧美一级黄| 欧美老熟妇乱子伦牲交| 欧美日韩视频精品一区| 国产av国产精品国产| 性色av一级| kizo精华| 亚洲天堂av无毛| 青春草亚洲视频在线观看| 久久久久网色| 久久久欧美国产精品| av网站免费在线观看视频| 国产欧美另类精品又又久久亚洲欧美| 国产精品久久久久久精品电影小说 | 国产69精品久久久久777片| 国产午夜精品一二区理论片| 午夜福利网站1000一区二区三区| 国产亚洲91精品色在线| 亚洲欧美一区二区三区国产| 亚洲性久久影院| 亚洲精品,欧美精品| 精品一区在线观看国产| 国产精品久久久久久精品古装| 国产成人一区二区在线| 精品国产乱码久久久久久小说| 啦啦啦中文免费视频观看日本| 欧美3d第一页| 看十八女毛片水多多多| 日韩三级伦理在线观看| 国产中年淑女户外野战色| 国产av一区二区精品久久 | 一区二区三区四区激情视频| 高清在线视频一区二区三区| 全区人妻精品视频| 久久久国产一区二区| 国产亚洲精品久久久com| 免费黄频网站在线观看国产| 边亲边吃奶的免费视频| 国产高清国产精品国产三级 | 少妇丰满av| 免费观看无遮挡的男女| tube8黄色片| 午夜福利在线观看免费完整高清在| 十分钟在线观看高清视频www | 久久精品国产亚洲网站| 国产探花极品一区二区| 免费播放大片免费观看视频在线观看| 免费观看无遮挡的男女| 丝袜喷水一区| 91久久精品电影网| 多毛熟女@视频| 黄色视频在线播放观看不卡| 欧美高清成人免费视频www| 少妇高潮的动态图| 九九久久精品国产亚洲av麻豆| 丰满少妇做爰视频| 99热这里只有是精品50| 午夜日本视频在线| 女人十人毛片免费观看3o分钟| 特大巨黑吊av在线直播| 国产高清不卡午夜福利| 亚洲精品色激情综合| 女性被躁到高潮视频| 欧美97在线视频| 男女边摸边吃奶| 舔av片在线| 嘟嘟电影网在线观看| 免费大片黄手机在线观看| 久久精品国产自在天天线| 亚洲成人手机| 男人添女人高潮全过程视频| 久久99蜜桃精品久久| 日本av手机在线免费观看| 中文字幕亚洲精品专区| 黄色日韩在线| 色哟哟·www| 秋霞在线观看毛片| 亚洲色图av天堂| 十分钟在线观看高清视频www | 男人狂女人下面高潮的视频| 大陆偷拍与自拍| 丰满人妻一区二区三区视频av| 婷婷色综合www| 精品久久久噜噜| 国产永久视频网站| 一级二级三级毛片免费看| 欧美3d第一页| 欧美日韩一区二区视频在线观看视频在线| 一级毛片 在线播放| 国产精品熟女久久久久浪| 精品视频人人做人人爽| 国产黄色免费在线视频| 国产免费一区二区三区四区乱码| 国产伦理片在线播放av一区| av免费观看日本| 欧美xxxx黑人xx丫x性爽| 最近最新中文字幕大全电影3| 国产成人精品久久久久久| 97在线视频观看| 性色av一级| 国产精品一区二区在线观看99| 18禁裸乳无遮挡动漫免费视频| 国产 精品1| 色5月婷婷丁香| 少妇丰满av| 日本一二三区视频观看| 亚洲三级黄色毛片| 国产午夜精品久久久久久一区二区三区| 视频中文字幕在线观看| 亚洲国产毛片av蜜桃av| 自拍偷自拍亚洲精品老妇| 一区二区三区四区激情视频| 免费人成在线观看视频色| 2022亚洲国产成人精品| 丰满少妇做爰视频| 国产毛片在线视频| 九九久久精品国产亚洲av麻豆| 日本欧美国产在线视频| 欧美激情国产日韩精品一区| 爱豆传媒免费全集在线观看| 极品教师在线视频| 插逼视频在线观看| 深爱激情五月婷婷| 亚洲不卡免费看| 两个人的视频大全免费| 丰满乱子伦码专区| 乱码一卡2卡4卡精品| 日韩欧美 国产精品| 久久影院123| 中文字幕制服av| 国产av码专区亚洲av| 久久人人爽人人爽人人片va| 久久久久久久国产电影| 国产乱人视频| 免费观看无遮挡的男女| 少妇的逼水好多| 哪个播放器可以免费观看大片| 一级毛片我不卡| 久久久精品免费免费高清| 街头女战士在线观看网站| 久久6这里有精品| 久久久a久久爽久久v久久| 国产永久视频网站| videossex国产| 免费少妇av软件| 亚洲av中文av极速乱| 啦啦啦视频在线资源免费观看| 老女人水多毛片| 亚洲av中文av极速乱| 久久国产亚洲av麻豆专区| 在线观看一区二区三区激情| 五月伊人婷婷丁香| 国产精品一区www在线观看| 成人高潮视频无遮挡免费网站| 中国三级夫妇交换| 欧美日韩亚洲高清精品| 亚洲欧美一区二区三区黑人 | 美女高潮的动态| av天堂中文字幕网| 黄色怎么调成土黄色| 丝袜喷水一区| 中文欧美无线码| 亚洲欧美清纯卡通| 亚洲欧美日韩东京热| 丰满人妻一区二区三区视频av| 少妇熟女欧美另类| 精品国产露脸久久av麻豆| 一级毛片电影观看| 极品教师在线视频| 三级经典国产精品| 国产成人免费观看mmmm| 亚洲综合精品二区| 亚洲第一av免费看| 日韩av在线免费看完整版不卡| 亚洲av电影在线观看一区二区三区| 久久人人爽人人片av| 人妻 亚洲 视频| 日韩av在线免费看完整版不卡| 国产亚洲91精品色在线| 久久久久性生活片| 国产毛片在线视频| 日韩av不卡免费在线播放| 欧美少妇被猛烈插入视频| 韩国高清视频一区二区三区| 亚洲欧美日韩东京热| 一区二区av电影网| 18禁裸乳无遮挡免费网站照片| 国产日韩欧美在线精品| 国产av码专区亚洲av| 欧美老熟妇乱子伦牲交| 国产亚洲5aaaaa淫片| 26uuu在线亚洲综合色| 亚洲精品国产成人久久av| 国产淫片久久久久久久久| 久久久欧美国产精品| 五月伊人婷婷丁香| 91精品国产国语对白视频| 亚洲精品乱码久久久v下载方式| 色网站视频免费| 精品午夜福利在线看| 午夜老司机福利剧场| 国产色婷婷99| 亚洲国产高清在线一区二区三| 五月玫瑰六月丁香| av女优亚洲男人天堂| 久热这里只有精品99| 黄片无遮挡物在线观看| 中国三级夫妇交换| 国产精品嫩草影院av在线观看| 中文乱码字字幕精品一区二区三区| 国产在线男女| 日本av免费视频播放| 国产免费视频播放在线视频| 少妇精品久久久久久久| 成人毛片a级毛片在线播放| 在线观看国产h片| 久久久久久久大尺度免费视频| 插逼视频在线观看| 国产精品成人在线| 大片免费播放器 马上看| av在线老鸭窝| 亚洲精品自拍成人| 午夜免费鲁丝| 男人爽女人下面视频在线观看| 夜夜爽夜夜爽视频| 久久国产精品大桥未久av | 在线观看av片永久免费下载| 噜噜噜噜噜久久久久久91| 久久精品国产亚洲网站| 国产精品99久久久久久久久| 日韩制服骚丝袜av| 毛片女人毛片| 大又大粗又爽又黄少妇毛片口| 久久久久久久久久人人人人人人| 在线观看一区二区三区| 国产精品国产av在线观看| 亚洲欧美一区二区三区黑人 | 男女免费视频国产| 国产成人91sexporn| 在线观看美女被高潮喷水网站| 蜜桃亚洲精品一区二区三区| 五月开心婷婷网| 亚洲国产欧美在线一区| 在线观看人妻少妇| 亚洲av男天堂| av线在线观看网站| 日韩不卡一区二区三区视频在线| 免费看日本二区| 男女啪啪激烈高潮av片| 简卡轻食公司| 国产免费福利视频在线观看| 最近手机中文字幕大全| av福利片在线观看| 亚洲高清免费不卡视频| www.av在线官网国产| 我要看日韩黄色一级片| 国产精品人妻久久久久久| 自拍欧美九色日韩亚洲蝌蚪91 | 美女脱内裤让男人舔精品视频| 亚洲精品久久午夜乱码| 欧美激情国产日韩精品一区| 激情五月婷婷亚洲| 国产av一区二区精品久久 | 久久精品国产a三级三级三级| 久久99精品国语久久久| 麻豆精品久久久久久蜜桃| 人妻夜夜爽99麻豆av| 一区二区三区乱码不卡18| www.av在线官网国产| 美女xxoo啪啪120秒动态图| 久久精品熟女亚洲av麻豆精品| 美女国产视频在线观看| 久久精品国产亚洲av天美| 国产 一区精品| 97精品久久久久久久久久精品| 永久网站在线| 99久久精品国产国产毛片| 免费av不卡在线播放| 黄色怎么调成土黄色| 亚洲欧美成人精品一区二区| 日韩av免费高清视频| 国产精品麻豆人妻色哟哟久久| 日韩不卡一区二区三区视频在线| 欧美高清性xxxxhd video| 精华霜和精华液先用哪个| 麻豆精品久久久久久蜜桃| 日韩一本色道免费dvd| 国产在视频线精品| 久久久久久久久久人人人人人人| 欧美日韩国产mv在线观看视频 | 日本欧美国产在线视频| 男女免费视频国产| 中文乱码字字幕精品一区二区三区| 国产精品久久久久久久电影| 在线观看免费高清a一片| 不卡视频在线观看欧美| 一级毛片久久久久久久久女| 亚洲人成网站在线观看播放| 狂野欧美激情性xxxx在线观看| 大又大粗又爽又黄少妇毛片口| 97超视频在线观看视频| tube8黄色片| av免费在线看不卡| 少妇精品久久久久久久| 中文精品一卡2卡3卡4更新| av在线老鸭窝| 国产成人精品婷婷| 成人一区二区视频在线观看| 精品久久国产蜜桃| 人人妻人人看人人澡| 黑人猛操日本美女一级片| 国产免费又黄又爽又色| 少妇的逼好多水| 国产一区有黄有色的免费视频| 少妇人妻久久综合中文| 精品人妻一区二区三区麻豆| 18禁裸乳无遮挡动漫免费视频| av黄色大香蕉| 我的女老师完整版在线观看| 又黄又爽又刺激的免费视频.| 少妇人妻久久综合中文| 老女人水多毛片| 高清日韩中文字幕在线| 国产高清三级在线| 少妇的逼好多水| 国产淫语在线视频| 免费av中文字幕在线| 国产伦精品一区二区三区四那| 国产精品免费大片| 一级毛片aaaaaa免费看小| 国产精品人妻久久久影院| 老师上课跳d突然被开到最大视频| 亚洲综合色惰| 国产成人精品一,二区| 五月玫瑰六月丁香| 久热这里只有精品99| 免费av中文字幕在线| 成人午夜精彩视频在线观看| 国产亚洲最大av| 小蜜桃在线观看免费完整版高清| 日韩强制内射视频| 亚洲无线观看免费| 一区二区三区四区激情视频| 性高湖久久久久久久久免费观看| 亚洲国产最新在线播放| 国产精品久久久久久久电影| 国产片特级美女逼逼视频| 边亲边吃奶的免费视频| 韩国av在线不卡| 这个男人来自地球电影免费观看 | 麻豆成人午夜福利视频| 中文字幕av成人在线电影| 国产人妻一区二区三区在| 永久免费av网站大全| 国产精品嫩草影院av在线观看| 国产精品一区二区性色av| 亚洲国产色片| 婷婷色麻豆天堂久久| 久久人人爽人人片av| 国产亚洲5aaaaa淫片| 色视频www国产| 国产午夜精品久久久久久一区二区三区| 亚洲精品中文字幕在线视频 | xxx大片免费视频| 国产淫语在线视频| 青春草亚洲视频在线观看| 人人妻人人爽人人添夜夜欢视频 | 男人和女人高潮做爰伦理| 制服丝袜香蕉在线| 欧美xxxx性猛交bbbb| 91午夜精品亚洲一区二区三区| 99热6这里只有精品| 久久99蜜桃精品久久| 美女视频免费永久观看网站| 精品国产三级普通话版| 精品亚洲成a人片在线观看 | 在线精品无人区一区二区三 | 成年美女黄网站色视频大全免费 | 日韩欧美精品免费久久| av.在线天堂| 成年人午夜在线观看视频| 国产永久视频网站| 超碰97精品在线观看| 3wmmmm亚洲av在线观看| 涩涩av久久男人的天堂| 亚洲内射少妇av| 80岁老熟妇乱子伦牲交| 日本av手机在线免费观看| 岛国毛片在线播放| 春色校园在线视频观看| 成人毛片a级毛片在线播放| 免费黄色在线免费观看| 日本午夜av视频| 久久精品国产a三级三级三级| 亚洲精品乱久久久久久| 久久久精品免费免费高清| 舔av片在线| 亚洲欧美日韩东京热| 美女内射精品一级片tv| 日本-黄色视频高清免费观看| a 毛片基地| av在线观看视频网站免费| 婷婷色av中文字幕| 亚洲综合色惰| 久久这里有精品视频免费| 搡老乐熟女国产| 亚洲最大成人中文| 插阴视频在线观看视频| 日韩av不卡免费在线播放| 性色av一级| 最新中文字幕久久久久| 亚洲国产毛片av蜜桃av| 国产亚洲最大av| 日韩,欧美,国产一区二区三区| 黄色怎么调成土黄色| 欧美成人精品欧美一级黄| 少妇人妻 视频| 国产 一区 欧美 日韩| 亚洲欧洲日产国产| 亚洲在久久综合| 久久午夜福利片| 男女免费视频国产| 天堂俺去俺来也www色官网| 欧美bdsm另类| 99热这里只有是精品50| 中国国产av一级| 国产精品一区二区三区四区免费观看| 婷婷色综合www| 91久久精品电影网| 国产一级毛片在线| 久久久久久久久大av| 夜夜爽夜夜爽视频| 在线观看美女被高潮喷水网站| 黄色日韩在线| 精品人妻熟女av久视频| 五月伊人婷婷丁香| 亚洲av成人精品一区久久| 国产精品爽爽va在线观看网站| 久久6这里有精品| 黄色欧美视频在线观看| 国产亚洲最大av| 九草在线视频观看| 我要看黄色一级片免费的| 国内少妇人妻偷人精品xxx网站| 日韩一区二区三区影片| 亚洲美女视频黄频| 欧美一级a爱片免费观看看| av一本久久久久| 国产成人精品福利久久| 在线 av 中文字幕| 国产真实伦视频高清在线观看| 久久久久久久久久久丰满| 一边亲一边摸免费视频| 麻豆成人av视频| 99久久综合免费| 久久人妻熟女aⅴ| 国产精品国产三级国产专区5o| 日韩伦理黄色片| 99热这里只有是精品50| 国产精品精品国产色婷婷| 国产精品一区二区三区四区免费观看| 日本欧美国产在线视频| 街头女战士在线观看网站| 老熟女久久久| 欧美少妇被猛烈插入视频| 国产在线免费精品| 国产老妇伦熟女老妇高清| 黄片无遮挡物在线观看| 观看免费一级毛片| 18禁在线播放成人免费| 熟女电影av网| 亚洲精品第二区| 少妇人妻 视频| 久久婷婷青草| 一二三四中文在线观看免费高清| 亚洲精品aⅴ在线观看| 国产一级毛片在线| 777米奇影视久久| 在线精品无人区一区二区三 | 亚洲激情五月婷婷啪啪| 亚洲不卡免费看| 亚洲欧洲日产国产| 成人亚洲精品一区在线观看 | 肉色欧美久久久久久久蜜桃| 久久久久性生活片| 七月丁香在线播放| 国产精品人妻久久久久久| 久久韩国三级中文字幕| av在线蜜桃| 国产精品久久久久久久久免| 国产欧美另类精品又又久久亚洲欧美| 久久久久久久久久成人| 国内精品宾馆在线| 国产午夜精品久久久久久一区二区三区| 国产日韩欧美亚洲二区| 丰满迷人的少妇在线观看| 人体艺术视频欧美日本| 成年免费大片在线观看| 一本—道久久a久久精品蜜桃钙片| 国产精品不卡视频一区二区| 亚洲综合精品二区| 黄片无遮挡物在线观看| 国产日韩欧美在线精品| 日本爱情动作片www.在线观看| 国产免费福利视频在线观看| 如何舔出高潮| 又粗又硬又长又爽又黄的视频| kizo精华| 春色校园在线视频观看| 少妇人妻一区二区三区视频| 日韩视频在线欧美| 91久久精品国产一区二区成人| 午夜福利网站1000一区二区三区| 欧美 日韩 精品 国产| 国产国拍精品亚洲av在线观看| 黄色配什么色好看| 欧美精品亚洲一区二区| 日韩制服骚丝袜av| 在线播放无遮挡| 亚洲欧美清纯卡通| 街头女战士在线观看网站| 国产一区有黄有色的免费视频| 天美传媒精品一区二区| 亚洲精品aⅴ在线观看| 精品99又大又爽又粗少妇毛片| 多毛熟女@视频| 国产精品一区二区在线观看99| 久久人人爽人人片av| 99久久中文字幕三级久久日本| 亚洲性久久影院| 久久久色成人| 3wmmmm亚洲av在线观看| 80岁老熟妇乱子伦牲交| 丰满少妇做爰视频| 日本av免费视频播放| 在线观看一区二区三区激情| 嫩草影院新地址| 高清黄色对白视频在线免费看 | 色综合色国产| 亚洲人与动物交配视频| 99久久精品热视频| 国产精品不卡视频一区二区| 大香蕉97超碰在线| 男女下面进入的视频免费午夜| 国产午夜精品一二区理论片| 插阴视频在线观看视频| 日本色播在线视频| 亚洲av中文字字幕乱码综合| 一区二区三区免费毛片| 国产精品偷伦视频观看了| 夜夜爽夜夜爽视频| 国产精品久久久久久av不卡| 国产精品国产三级专区第一集| 99热这里只有是精品50| 一二三四中文在线观看免费高清| 男人舔奶头视频| 国产高清三级在线| 一二三四中文在线观看免费高清| 久久久午夜欧美精品| 国产高清三级在线| 久久 成人 亚洲| 汤姆久久久久久久影院中文字幕| 国产成人a区在线观看| 久久韩国三级中文字幕| 一区二区三区精品91| 日日啪夜夜爽| 观看美女的网站| 久久久久久九九精品二区国产| av线在线观看网站| 综合色丁香网| 国产乱人视频| 又黄又爽又刺激的免费视频.| 亚洲欧美日韩卡通动漫| 男女啪啪激烈高潮av片| 丝袜喷水一区| 91久久精品国产一区二区成人| 日产精品乱码卡一卡2卡三| 伊人久久国产一区二区| 亚洲欧洲日产国产| 国产欧美亚洲国产| 人妻少妇偷人精品九色|