99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

Word粘貼到umeditor格式錯(cuò)亂?前端攔截+后端凈化方案詳解

Word粘貼到umeditor格式錯(cuò)亂?前端攔截+后端凈化方案詳解 管理著一批芯片制造產(chǎn)業(yè)鏈的垂直資訊站最讓我頭疼的從來不是服務(wù)器負(fù)載反而是編輯們每天都會(huì)罵人的那個(gè)操作——從Word里復(fù)制一篇產(chǎn)品規(guī)格說明粘貼到umeditor里點(diǎn)保存然后前臺(tái)樣式就亂了。段落間距忽大忽小字號(hào)時(shí)而12px時(shí)而16px表格第一列像被人拽了一把空行多到能跑馬圖片下面的注釋字體還帶著Word特有的那種藍(lán)色。這兩年我陸續(xù)把站群后臺(tái)的富文本編輯器統(tǒng)一收斂到umeditor就是為了解決這個(gè)Word導(dǎo)入兼容性問題前前后后踩了不少坑也沉淀了一套相對(duì)完整的處理方案。這篇就把整個(gè)處理過程拆開講透——包括為什么會(huì)亂、前端攔截清洗怎么做、后端為什么還得兜一層底。如果你也在運(yùn)營類似的行業(yè)網(wǎng)站群編輯團(tuán)隊(duì)里有人天天拿Word粘貼文檔或者你自己被編輯器里那些甩不掉的Office垃圾標(biāo)簽折磨過這篇文章應(yīng)該能讓你少走好幾天的彎路。我會(huì)把代碼、配置、踩坑點(diǎn)都直接放出來你可以照著抄。1. 編輯部的日常從Word到umeditor的一場格式災(zāi)難先說說我們這邊的實(shí)際場景。站群覆蓋了半導(dǎo)體材料、設(shè)備、封裝測試、晶圓制造工藝幾個(gè)細(xì)分方向每個(gè)站點(diǎn)都有獨(dú)立的欄目和模板但后臺(tái)都是同一套內(nèi)容管理系統(tǒng)編輯器統(tǒng)一用的umeditor。內(nèi)容團(tuán)隊(duì)每天要發(fā)的東西特別雜展會(huì)新聞稿、廠商提供的產(chǎn)品參數(shù)表、技術(shù)白皮書的摘錄、專家講座的紀(jì)要這些素材十有八九都是Word文檔的形式躺在編輯的電腦里。編輯的工作流很固定打開WordCtrlA全選CtrlC復(fù)制回到瀏覽器后臺(tái)CtrlV粘貼到umeditor的編輯區(qū)然后點(diǎn)發(fā)布。問題就出在這個(gè)CtrlV上。粘貼進(jìn)去的瞬間編輯區(qū)看著好像是正常的——段落有縮進(jìn)標(biāo)題有加粗表格線條都在。真正崩潰的是在預(yù)覽和發(fā)布之后。我匯總過編輯反饋的最常見變形類型段落行距變得忽寬忽窄。同一篇文章里有的段落行距是正常值有的段落卻像開了倍速一樣松垮因?yàn)閃ord給每個(gè)段落都寫死了line-height。字號(hào)混戰(zhàn)。正文里的中文字變成12px英文和數(shù)字卻變成10.5pt甚至同一句話里出現(xiàn)兩種字號(hào)。表格完全失控。列寬被Word的絕對(duì)寬度鎖死粘貼到窄欄目的頁面上直接撐破版面某些單元格的背景色消失邊框線粗細(xì)不一。莫名其妙的空行。Word的o:p標(biāo)簽在編輯器里渲染成空段落一篇文章貼下來多出十幾二十個(gè)空白行。字體顏色被鎖定。原文里沒有特別標(biāo)色的文字到了前臺(tái)卻變成深灰色或者藍(lán)色。最麻煩的是這些問題在umeditor的源代碼模式里看不太出來——HTML代碼里全是stylemso-line-height-rule:exactly; line-height:...;這種Office專有樣式混在一堆正常標(biāo)簽里普通人肉眼根本找不出問題。但瀏覽器一解析這些樣式就實(shí)打?qū)嵉貕褐屏苏军c(diǎn)模板里的CSS。這個(gè)階段我試過兩種表面功夫一是讓編輯粘貼到umeditor后用自帶的清除格式按鈕二是切到純文本模式重新排版。事實(shí)證明都不治本。幾百篇文章的月度產(chǎn)能編輯不可能每篇都手動(dòng)刷一遍格式純文本模式等于把Word里的加粗、列表、表格全廢了排版成本直接翻倍。所以必須從源頭攔截。2. 剪貼板里的偽HTML問題為什么出在源頭要解決問題得先搞清楚一個(gè)反直覺的事實(shí)——從Word里復(fù)制出來的東西根本就不是干凈的文本而是一段被Word重新序列化過的專用HTML片段。Windows系統(tǒng)在復(fù)制操作發(fā)生時(shí)會(huì)把內(nèi)容按多種格式同時(shí)放進(jìn)剪貼板其中既包括純文本text/plain也包括HTML片段text/html。Word存放在text/html里的內(nèi)容和我們平時(shí)手寫的HTML完全是兩種風(fēng)格。我截取過一段從Word復(fù)制出來的剪貼板HTML簡化之后長這樣!--[if gte mso 9]xml w:WordDocument w:ViewNormal/w:View w:Zoom0/w:Zoom w:TrackMovesfalse/w:TrackMoves /w:WordDocument /xml![endif]-- p classMsoNormal stylemso-pagination:widow-orphan; line-height:150%; span stylefont-size:10.5pt; font-family:Arial,sans-serif; mso-ascii-font-family:Arial; 芯片制造的核心環(huán)節(jié)包括 /span span langEN-US stylefont-size:10.5pt; font-family:Arial,sans-serif; CMP /span o:p/o:p /p這里面有幾類東西是編輯器根本不需要的!--[if gte mso 9]...![endif]--Word的條件注釋專門給Office程序讀的元信息。w:WordDocument、w:View這一整組w:前綴標(biāo)簽是Word的XML命名空間瀏覽器不認(rèn)但會(huì)殘留在DOM里。o:pWord的空段落占位符在頁面上渲染成空白行。mso-前綴的CSS聲明例如mso-pagination、mso-ascii-font-family它們只在Word自己的排版引擎里有意義到了瀏覽器里要么被忽略、要么產(chǎn)生奇怪的副作用。classMsoNormalWord內(nèi)置樣式類名會(huì)在后臺(tái)CSS表里被重新定義。每個(gè)字符被包在獨(dú)立的span里一個(gè)句子拆成三四層嵌套span。如果用瀏覽器開發(fā)者工具去看umeditor粘貼后的DOM你會(huì)發(fā)現(xiàn)這些標(biāo)簽全被原樣塞進(jìn)了正文區(qū)。為什么因?yàn)閡meditor走的是所見即所得的老路子你粘貼什么它就是盡量還原什么。它內(nèi)部對(duì)粘貼內(nèi)容只是做了一遍簡單的HTML標(biāo)簽白名單過濾把script、iframe這類危險(xiǎn)標(biāo)簽剔掉但不會(huì)去解析、重建DOM結(jié)構(gòu)更不會(huì)主動(dòng)清理Office特有的樣式和注釋。所以Word給什么它就原樣插進(jìn)去。這也就能解釋為什么格式會(huì)亂——站點(diǎn)的前臺(tái)模板統(tǒng)一用了p { line-height: 1.6 }這樣的規(guī)則但Word粘貼進(jìn)來的段落自帶line-height:150%的內(nèi)聯(lián)樣式按CSS的優(yōu)先級(jí)規(guī)則內(nèi)聯(lián)樣式直接把模板規(guī)則干掉了。大部分情況下前臺(tái)展示用的樣式表和你正文里殘留的Office內(nèi)聯(lián)樣式根本不在同一個(gè)設(shè)計(jì)體系里互相打架就是必然的。所以我得出的第一個(gè)結(jié)論是靠編輯器自帶的清除格式按鈕只能解決一小部分問題必須從兩個(gè)環(huán)節(jié)下手——前端在粘貼事件發(fā)生時(shí)主動(dòng)攔截并清洗剪貼板里的HTML后端在保存入庫前做第二層凈化。這兩個(gè)環(huán)節(jié)缺一不可。3. 前端攔截清洗把Office垃圾標(biāo)簽攔在發(fā)布之前前端攔截的思路不復(fù)雜監(jiān)聽編輯器的paste事件獲取剪貼板里的text/html數(shù)據(jù)交給一個(gè)專門的清洗函數(shù)處理處理完再手動(dòng)塞回編輯器。關(guān)鍵是清洗規(guī)則要做到既不漏掉Office垃圾又不過度殺傷原文格式。3.1 攔截粘貼事件與數(shù)據(jù)獲取umeditor實(shí)例化之后可以直接拿它的DOM容器綁定paste監(jiān)聽。多數(shù)現(xiàn)代瀏覽器都支持ClipboardEvent.clipboardData我們可以靠它取到兩種格式的數(shù)據(jù)editor.addListener(ready, function () { var container editor.container; container.addEventListener(paste, function (e) { var clipboardData e.clipboardData || window.clipboardData; var html ; var text ; if (clipboardData) { html clipboardData.getData(text/html); text clipboardData.getData(text/plain); } // 沒有HTML內(nèi)容說明是純文本粘貼直接放行 if (!html) { return; } e.preventDefault(); // 有些瀏覽器在preventDefault之后剪貼板數(shù)據(jù)會(huì)失效 // 所以把后續(xù)處理包進(jìn)setTimeout里等數(shù)據(jù)穩(wěn)定再取 setTimeout(function () { var cleanHtml cleanWordHtml(html); editor.setContent(cleanHtml, true); }, 10); }); });這里有個(gè)容易被忽略的坑如果你在e.preventDefault()之后立刻去讀clipboardData個(gè)別瀏覽器尤其是老版Edge和部分舊Chrome內(nèi)核會(huì)返回空字符串因?yàn)槟J(rèn)行為被中斷后剪貼板的訪問權(quán)限也跟著變了。穩(wěn)妥的做法是先把html讀出來再阻止默認(rèn)行為或者像上面代碼里那樣把清洗邏輯放進(jìn)setTimeout里延后執(zhí)行。3.2 清洗函數(shù)的具體實(shí)現(xiàn)清洗函數(shù)cleanWordHtml的核心目標(biāo)很明確刪除Office專屬標(biāo)記保留語義化標(biāo)簽剝離危險(xiǎn)屬性。我把完整實(shí)現(xiàn)放出來你可以直接復(fù)制到站群的公共JS里function cleanWordHtml(html) { if (!html) return ; // 1. 移除office XML聲明、條件注釋、所有無用標(biāo)簽 html html.replace(/!--[\s\S]*?--/g, ) // 去注釋 .replace(/xml[\s\S]*?\/xml/gi, ) // 去xml塊 .replace(/\/?o:p[^]*/gi, ) // 去o:p .replace(/\/?v:[^]*/gi, ) // 去v:開頭的VML .replace(/\/?w:[^]*/gi, ) // 去w:開頭的Word標(biāo)記 .replace(/\/?st1:[^]*/gi, ) // 去st1:開頭的SmartTag .replace(/!\[if[\s\S]*?\]/g, ); // 去條件注釋 // 2. 創(chuàng)建DOM解析器在內(nèi)存里操作避免正則匹配不到嵌套結(jié)構(gòu) var doc new DOMParser().parseFromString(html, text/html); var root doc.body; // 3. 處理style屬性移除mso開頭和css語言標(biāo)記 var all root.querySelectorAll(*); for (var i 0; i all.length; i) { var el all[i]; var style el.getAttribute(style); if (style) { var clean style.split(;) .map(function (s) { return s.trim(); }) .filter(function (s) { if (s ) return false; // 過濾掉所有mso-屬性、lang屬性、font-family中的mso字體 if (/^mso-/.test(s)) return false; if (/^css-language/.test(s)) return false; return true; }) .join(;); if (clean) { el.setAttribute(style, clean); } else { el.removeAttribute(style); } } // 4. 去掉word留下的語言標(biāo)記 if (el.getAttribute(lang) !el.textContent.trim()) { el.removeAttribute(lang); } // 5. 清理空的span和p if (el.tagName SPAN !el.getAttribute(style) !el.getAttribute(class) el.children.length 0 el.textContent.trim() ) { el.parentNode.removeChild(el); } if (el.tagName P el.children.length 0 el.textContent.trim() ) { el.parentNode.removeChild(el); } } // 6. 移除class里的MsoNormal等Word內(nèi)置類名 var allWithClass root.querySelectorAll([class]); for (var j 0; j allWithClass.length; j) { var cls allWithClass[j]; var classNames cls.getAttribute(class).split(/\s/) .filter(function (name) { return name !/^Mso/.test(name); }); if (classNames.length) { cls.setAttribute(class, classNames.join( )); } else { cls.removeAttribute(class); } } // 7. 遞歸清理嵌套的font標(biāo)簽去掉face/color殘留 root.querySelectorAll(font).forEach(function (f) { var parent f.parentNode; while (f.firstChild) { parent.insertBefore(f.firstChild, f); } parent.removeChild(f); }); // 8. 序列化回字符串 return root.innerHTML; }這套清洗做完Word里面的MsoNormal、mso-line-height-rule、o:p、langEN-US這類東西基本絕跡了而加粗、斜體、列表、表格、圖片這些語義化標(biāo)簽都能保住。我強(qiáng)烈建議用DOMParser做解析而不是純正則——Word生成的HTML嵌套很深純正則在復(fù)雜嵌套下很容易誤傷DOM解析更可靠。3.3 保留格式的取舍策略清洗做太過也有問題這是我在站群實(shí)際運(yùn)營中逐步調(diào)整出來的平衡。一開始我圖省事直接取text/plain粘貼結(jié)果編輯炸了——從Word復(fù)制的表格全沒了變成一行行tab分隔的純文本。后來改成全清洗、只留語義標(biāo)簽的方案才算真正可落地。我這里說的保留范圍是這樣的p、h1~h6、ul、ol、li、dl、dt、dd這些結(jié)構(gòu)標(biāo)簽原樣保留。strong、em、b、i、u、s這些基礎(chǔ)行內(nèi)格式保留。table、tr、td、th、thead、tbody表格結(jié)構(gòu)保留但剝掉大部分內(nèi)聯(lián)樣式讓前臺(tái)模板的表格樣式接管。img保留但要額外處理后面踩坑章節(jié)會(huì)說。a標(biāo)簽保留href和title但去掉target——站群內(nèi)的文章鏈接統(tǒng)一要求新窗口打開規(guī)則由模板決定。再強(qiáng)調(diào)一點(diǎn)清洗不是越干凈越好。如果站點(diǎn)模板依賴于某種特定的段落格式約定比如技術(shù)參數(shù)表固定兩列過度刪除樣式會(huì)導(dǎo)致前臺(tái)表格沒邊框沒間距。建議清洗函數(shù)做成參數(shù)可配置的像上面代碼里的filter函數(shù)將來可以根據(jù)站點(diǎn)模板動(dòng)態(tài)調(diào)整。4. 后端HTML凈化為站群內(nèi)容做雙保險(xiǎn)前端攔截解決了90%的日常粘貼問題但兩條漏網(wǎng)路徑依然存在一是某些低版本瀏覽器或者內(nèi)核特殊的國產(chǎn)瀏覽器剪貼板事件拿不到text/html前端清洗根本不會(huì)觸發(fā)二是編輯可能會(huì)從郵件客戶端、網(wǎng)頁、PDF里復(fù)制內(nèi)容這些來源同樣可能帶來非語義化的HTML甚至夾帶XSS攻擊代碼。所以我在站群的每個(gè)站點(diǎn)根目錄下都部署了一層后端HTML凈化邏輯統(tǒng)一放在公共函數(shù)庫里。4.1 為什么不能用簡單strip_tags很多人覺得后端凈化就是strip_tags一下危險(xiǎn)標(biāo)簽全沒了順便把垃圾也清了。這個(gè)思路有個(gè)致命問題strip_tags只按標(biāo)簽名刪不管屬性里的危險(xiǎn)內(nèi)容。Word粘貼產(chǎn)生的樣式里面雖然不含腳本但如果哪個(gè)編輯手滑復(fù)制了一段帶onerror的imgstrip_tags是攔不住的。加上站群內(nèi)容會(huì)被搜索引擎大量收錄萬一中招的都是公開頁面影響面會(huì)很快擴(kuò)散。所以后端凈化我用的方案是PHP環(huán)境下的HTMLPurifier它對(duì)屬性、協(xié)議、CSS聲明都做白名單校驗(yàn)比單純strip_tags可靠得多。4.2 HTMLPurifier的關(guān)鍵配置我們的后臺(tái)是PHP所以在composer里引入了HTMLPurifier封裝成統(tǒng)一函數(shù)purify_html($dirty_html)?php require_once __DIR__ . /vendor/autoload.php; use HTMLPurifier; use HTMLPurifier_Config; function purify_html($dirtyHtml) { $config HTMLPurifier_Config::createDefault(); // 允許的標(biāo)簽 $config-set(HTML.Allowed, p,br,strong,em,u,s,ul,ol,li,blockquote,. h2,h3,h4,h5,h6,. table[class],thead,tbody,tr,td[colspan|rowspan],th[colspan|rowspan],. img[src|alt|width|height],a[href|title], . code,pre ); // 允許的屬性 $config-set(HTML.AllowedAttributes, *.class,img.src,img.alt,img.width,img.height,a.href,a.title); // 托管協(xié)議配置防止javascript:偽協(xié)議 $config-set(URI.AllowedSchemes, [http true, https true, mailto true]); // 關(guān)閉embed/object堅(jiān)決不允許Flash時(shí)代的老玩法 $config-set(HTML.SafeObject, false); $config-set(HTML.SafeEmbed, false); // CSS白名單只留字體基礎(chǔ)屬性和表格布局相關(guān) $config-set(CSS.AllowedProperties, font-weight,font-style,text-decoration,text-align,. width,height,border-collapse,vertical-align,background-color); // 如果正文里帶過大的內(nèi)聯(lián)樣式就不需要了直接關(guān)掉style $config-set(CSS.AllowTricky, false); $purifier new HTMLPurifier($config); $cleanHtml $purifier-purify($dirtyHtml); // 清理過長的空段落Word粘貼經(jīng)常產(chǎn)生連續(xù)多個(gè)pbr/p $cleanHtml preg_replace(#(pbr/?\s*/p){2,}#i, pbr/p, $cleanHtml); return $cleanHtml; }這層凈化解決的核心問題不是格式——格式是前端的事——而是安全兜底和HTML合規(guī)性。HTMLPurifier會(huì)把所有不被允許的標(biāo)簽、屬性、CSS聲明全丟掉輸出一個(gè)干凈、語義化、沒有XSS風(fēng)險(xiǎn)的HTML片段。站群的后臺(tái)保存接口統(tǒng)一調(diào)用這個(gè)函數(shù)保證入庫的每篇文章都經(jīng)過了白名單過濾。搞這塊的時(shí)候我踩了一個(gè)性能的坑某次編輯粘貼了一篇64頁的PDF轉(zhuǎn)Word文檔整段HTML文本有300多KBpurify跑了接近兩秒接口超時(shí)。后面我加了一層判斷如果strlen($dirtyHtml)超過200KB就先用mb_substr截?cái)嗟胶侠黹L度再處理——其實(shí)這種超長文本來就應(yīng)該拆成多段處理不該一次性塞進(jìn)編輯器。4.3 圖片的特殊處理服務(wù)器端的凈化還會(huì)順手處理一類問題Word粘貼的圖片經(jīng)常是base64編碼的內(nèi)嵌圖片HTML里長這樣img srcdata:image/png;base64,iVBORw0KGgoAAAANSUhEUgA...這種圖片直接保存會(huì)把數(shù)據(jù)庫撐爆而且圖片無法被搜索引擎抓取訪問量大的頁面還會(huì)拖慢加載速度。我建議在保存接口里做一個(gè)檢測凡是以data:image開頭的src統(tǒng)一轉(zhuǎn)存到站群的CDN路徑生成一個(gè)新文件名再把src替換成真實(shí)URL。站群后臺(tái)如果用的對(duì)象存儲(chǔ)這一步也很好封裝。我后面再細(xì)說這個(gè)先不急。5. 實(shí)測中的典型坑位與針對(duì)性修復(fù)方案上線后我觀察了編輯部兩周多的實(shí)際使用情況大部分問題確實(shí)消失了但又有幾個(gè)新坑冒出來。這些坑特別有代表性單獨(dú)列出來說一下。5.1 表格粘貼后沒有邊框了前端清洗把Word表格內(nèi)聯(lián)樣式里的border、cellspacing等屬性全清掉了但站群前臺(tái)模板對(duì)表格的默認(rèn)樣式比較弱導(dǎo)致從Word粘貼過來的表格在前臺(tái)變成了隱形表格——有行列結(jié)構(gòu)就是看不到線。解決辦法不是在清洗里保留Word的邊框樣式而是在前臺(tái)模板的CSS里補(bǔ)上對(duì)table的默認(rèn)樣式.article-content table { width: 100%; border-collapse: collapse; margin: 16px 0; } .article-content th, .article-content td { border: 1px solid #ddd; padding: 8px 10px; }這樣不管是Word粘貼的表格還是編輯器手敲的表格都能獲得一套統(tǒng)一的視覺樣式。這比從Word里繼承一堆border-color:#7f9db9之類的破碎樣式可靠得多。5.2 表格列寬撐破版面Word表格經(jīng)常給td寫入width: 112px這種絕對(duì)像素值在站群窄欄里一旦列數(shù)多就必然溢出。我在項(xiàng)目里引入了一個(gè)簡單的后處理用正則把所有width\d(\.\d)?和width: ?\d(\.\d)?px屬性刪掉然后給表格統(tǒng)一加上table-layout: auto讓瀏覽器根據(jù)內(nèi)容自動(dòng)分配列寬。// 前端清洗完成后對(duì)表格做一次性處理 function normalizeTables(rootNode) { var tables rootNode.querySelectorAll(table); for (var i 0; i tables.length; i) { tables[i].removeAttribute(width); tables[i].style.width 100%; tables[i].style.tableLayout auto; var cells tables[i].querySelectorAll(td, th); for (var j 0; j cells.length; j) { cells[j].removeAttribute(width); cells[j].removeAttribute(height); } } }這個(gè)處理建議放在清洗函數(shù)里最后一步執(zhí)行保證入庫內(nèi)容本身就是自適應(yīng)列寬的形態(tài)。5.3 圖片base64導(dǎo)致的存儲(chǔ)壓力這是最隱蔽的坑。編輯從Word里拖一張高清設(shè)備照片進(jìn)去umeditor界面上看到的是正常的圖片但源代碼模式里是一長串base64字符串。三個(gè)月的站群運(yùn)營下來數(shù)據(jù)庫體積漲了1.7倍排查半天才發(fā)現(xiàn)是粘貼圖片導(dǎo)致的。我先在umeditor配置里開了catchRemoteImageEnable: true抓取遠(yuǎn)程圖片讓編輯器自動(dòng)把外鏈圖片拉取到服務(wù)器。但這只解決遠(yuǎn)程圖片base64內(nèi)嵌圖還是靠后端保存時(shí)處理。我在公共函數(shù)里加了一段轉(zhuǎn)存邏輯function convertBase64Images($html) { preg_match_all(/img[^]srcdata:image\/(png|jpeg|jpg|gif);base64,([^])/i, $html, $matches); foreach ($matches[0] as $index $fullMatch) { $ext $matches[1][$index]; $data base64_decode($matches[2][$index]); // 生成唯一文件名防止路徑?jīng)_突 $filename date(Ymd) . / . uniqid() . . . $ext; $url upload_to_storage($filename, $data); // 偽代碼上傳到對(duì)象存儲(chǔ)并返回URL $html str_replace($fullMatch, img src . $url . alt . $filename . , $html); } return $html; }注意一點(diǎn)base64轉(zhuǎn)存會(huì)明顯增加接口耗時(shí)因?yàn)橐獯a、傳輸、上傳。建議轉(zhuǎn)存放在異步隊(duì)列里先把替換后的URL寫進(jìn)一個(gè)臨時(shí)字段等上傳完成再更新到文章正文里避免用戶點(diǎn)保存時(shí)轉(zhuǎn)圈太久。不過如果文章量不大同步處理也能接受。5.4 空段落堆積導(dǎo)致間距異常前端清洗里我刪除了空的span也刪了沒有內(nèi)容的p但Word還遺留一種情況段落里有且僅有br一個(gè)接一個(gè)比如pbr/ppbr/p。這種在umeditor編輯區(qū)里看起來就是幾行空白前臺(tái)渲染時(shí)會(huì)產(chǎn)生很大的垂直留白。我后來在上面的清洗代碼里直接加了一步正則合并把連續(xù)兩個(gè)及以上的空段落壓縮成一個(gè)html html.replace(/(p(?:\s[^]*)?\s*br\s*\/?\s*\/p){2,}/g, pbr/p);同時(shí)建議編輯在內(nèi)容發(fā)布之前用umeditor自帶的刪除空段落插件跑一遍——后端也可以做同樣的壓縮雙保險(xiǎn)總比單保險(xiǎn)穩(wěn)。5.5 老瀏覽器的兼容性兜底前面提到部分瀏覽器在paste事件里拿不到text/html數(shù)據(jù)。這個(gè)我實(shí)測下來主要是老版本Edge和360安全瀏覽器的兼容模式。兜底方案是給umeditor加一個(gè)粘貼后自動(dòng)清理的鉤子在afterpaste事件里對(duì)整個(gè)編輯器內(nèi)容區(qū)再執(zhí)行一次cleanWordHtml——這個(gè)鉤子觸發(fā)時(shí)內(nèi)容已經(jīng)被瀏覽器寫進(jìn)去了所以只做后置清洗相當(dāng)于把漏網(wǎng)之魚再撈一遍。editor.addListener(afterpaste, function () { var body editor.body; var html body.innerHTML; var cleanHtml cleanWordHtml(html); if (cleanHtml ! html) { editor.setContent(cleanHtml, true); } });不過要注意afterpaste里如果直接用setContent會(huì)強(qiáng)制移動(dòng)光標(biāo)位置編輯在中途被打斷。所以我同時(shí)把光標(biāo)位置緩存下來清洗結(jié)束后再恢復(fù)。實(shí)現(xiàn)起來不算復(fù)雜這里就不展開了。5.6 站群多站點(diǎn)配置的同步管理最后說一個(gè)站群層面獨(dú)有的坑。我們的站群有十幾個(gè)站點(diǎn)每個(gè)站點(diǎn)后臺(tái)都各自加載umeditor的配置。如果我在某個(gè)站點(diǎn)單獨(dú)改了cleanWordHtml其他站點(diǎn)不會(huì)同步慢慢就出現(xiàn)站點(diǎn)A發(fā)布正常、站點(diǎn)B表格亂掉的奇怪現(xiàn)象。我的做法是把清洗函數(shù)、表格歸一化、空段落清理全都抽到一個(gè)獨(dú)立的公共JS文件里每個(gè)站點(diǎn)的編輯器頁面都引用同一個(gè)文件。本地上線前先在staging站點(diǎn)做一輪批量歷史文章的重清洗測試確認(rèn)沒破壞舊數(shù)據(jù)再推到生產(chǎn)站群。這套流程能確保站群所有站點(diǎn)執(zhí)行的是同一套清洗邏輯不會(huì)出現(xiàn)各改各的、互相打架的情況。6. 寫在最后這套方案實(shí)際運(yùn)行下來的體會(huì)如果讓我總結(jié)這件事最核心的教訓(xùn)那就是Word導(dǎo)入兼容性問題不能靠編輯器設(shè)置里點(diǎn)幾下解決它本質(zhì)上是剪貼板數(shù)據(jù)、前端清洗、后端凈化、前臺(tái)CSS四層之間的協(xié)作問題缺一層都會(huì)出幺蛾子。上線這套方案大概兩個(gè)月后編輯部關(guān)于格式亂了的求助工單從每周十幾條降到了偶爾一兩條剩下的基本都是特殊排版需求比如復(fù)雜的合并單元格表格。內(nèi)容入庫的HTML體積也小了很多Word粘貼一篇文章的代碼量從平均30KB降到了8KB左右數(shù)據(jù)庫瘦身效果明顯。我個(gè)人建議如果你也在維護(hù)類似的站群一定要把這套清洗邏輯沉淀成公共組件不要每改一個(gè)站點(diǎn)就復(fù)制粘貼一遍代碼。畢竟項(xiàng)目的核心價(jià)值是內(nèi)容的持續(xù)生產(chǎn)而不是反復(fù)折騰一個(gè)粘貼問題。希望這篇分享能幫你把這塊硬骨頭啃下來讓編輯能多花點(diǎn)時(shí)間在內(nèi)容上少跟格式較勁。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
大香蕉婷婷久久| 三日本无码| 伊人网欧美在线男人天堂五月丁香 | 人妻激情网| 五月婷婷AV| 精品国产a| 99这里只有精品视频| 久热伊人9| 99久久久免费| 99热精品一区| 婷婷九月丁香天堂丁香天堂| 激情五月天婷婷五月天| 俺去也在线官网| 97超级啪啪在线观看| 俺也高清无码高清视频| 色婷天天| 大战熟女丰满人妻AV| 婷婷五月精品中文字幕| 日本三级中文字幕| 精品国产一区二区三区四区阿崩| 直接看的av| 亚洲无码黄色| 久久久久9999| 婷婷五月天色播| 欧美 日韩 成人 在线| 可以看的av网站| 亚洲色五月天在线| 六月婷婷七月丁香| 国产精品涩涩涩视频网站| 96五月丁香熟女| 五月丁香综合影院| 色五月情| 无码人妻激情| 丁香五月停停av| 99er热精品视频| 日日爽日日| AⅤ色区| 激情婷婷五月少妇| 亚洲最大成人综合网720P| 激情综合五月婷婷六月丁香| 激情婷婷色小说| 丁香五月激情五月| 五月香婷婷| 五月婷婷婷婷婷| 在线资源av-超碰中文在线-成人AV| 丁香五月婷婷影院| 亚洲va在线∨a天堂va欧美va| PORNY九色9l自拍视频成人| 欧洲色| 90色免费视频| 99精品热| 天天天在线观看| 国产Va视频| 日本少妇AA一级特黄大片| 九九综合久久| 久久婷婷婷| 丁香五月天色| 久艹大香蕉| 国产精品18久久久| 久久五月婷| 狠狠五月天婷婷激情网。| 99热主页日本| aaa9区免费在线观看| 五月丁香成人网| 5月婷婷6月六月丁香| 5月色婷婷| 黄色五月婷| 久久久婷| 色综合激情| 操逼棍操逼| 色婷婷大香蕉| www.久久久久久| 国产人妻人伦精品一区二区| 丁香五月手机在线| 97婷婷狠狠| 99精品爱| 思思久久思思| 天天综合.com| 激情丁香婷婷六月天| 丁香五月婷婷欧美成人色图| 123日本不卡在线| 日韩色色视频| 大香蕉啪啪啪| 91超碰九色| 五月天婷婷爱| 五月丁香激情婷婷| 九九热视频思思| 久久婷婷丁香五月一二三| 六月婷婷色色色| 久草免费福利视频| 玖玖爱伊人网| 五月天综合在线网| 成人在线观看精品| 95精品区一区二| 日日夜夜狠狠| 深爱激情丁香| 欧美成人精品A片免费一区99| 日韩狠狠色| 九一99| 亚洲热综合网在线观看| 99色色最新视频| 五月婷俺去也| 丁香六月婷婷综合色| 另类激情四射| 中文资源在线a| 五他月天啪啪啪| 成人超碰网| 色吧五月| 欧美成人一区二区三区在线视频 | 苗黎美女四级成人版一级二级毛片| 婷婷五月激情五月激情| 国产超碰在线| 夜夜爱网站| 超碰人人色| 欧美日韩成人在线观看| 五月丁香六月激情综合| 91九色视频| 五月天激情国产综合婷婷婷| 九九热婷婷| 五月婷婷av| 国产性爱亚洲是图| 91婷婷搞| 丁香激情五月| 成人无码髙潮喷水A片| 夫妇交换刺激做爰| 超碰69天堂| 99热每日| 日韩一级网站| 国产成人+综合亚洲+天堂| 色婷婷色情| 五月色丁香| 4399在线日本A片| 99久在线精品| 欧美成人无码高清一区二区三区| 欧洲激情五月天| 五月天色导航| 天天久综合| 高清无码入口| 久操人妻| 中文字幕乱码亚洲精品一区| 9色操| 99在线综合视频| 性爱网六月丁香| 婷婷终合色图| 色之综合网| 天天做天天要天天爽| 五月天婷婷网站| 综合热无码| 亚洲A色| 丁香五月婷婷色情综合| 色五月天在线观看| 久久五月婷综合| 丁香五月激情啪啪啪啪| 91超碰人人操| 激情5月天天天| 五月丁香婷婷成人网| 久久综合五月天| 综合AV在线| 精品色色| 久久婷中文字幕| 日韩成人电影在线播放| 激情婷婷五月天伊人在线观看| wwccc久久久| 97色色在线视频| 久久婷婷成人| 爱穴久久| 国产亚洲色婷婷久久99精品91| 婷婷丁香午夜综合影视| www.minyis.com【JT】实力收量可预付QQ2101460746 | 超碰97干| 97在线99| 99久久综合网| 武汉美女啪啪视频免费一级片| 国产午夜一区二区三区| 亭亭五月丁香五月天激情| 色婷婷在线视频综合| 99这里只有精品视频| 免费亚洲婷婷中文字幕| 大香蕉久久视频久久视频 | 亚洲成人av在线播放| 啊v视频在线观看| 五五月五月| 激情五月天婷婷丁香 | AAA久久| 日本久久色| 噜噜操操| 四月婷婷丁香| 另类小说五月天| www.一区二区三区| 色之综合网| 婷婷五月花丁香| 伊人啪啪网| 日韩精品视频中文字幕| 天天插天天狠| 久久9视频欧美| 久久五月天激情| 久久大香蕉同僚| 激情五月激情综合网一级丸片| 婷婷五月激情天| 色婷婷电影网| 成人婷99最新| 青青草成人网| 5月丁香综合图区| 丁香五月香蕉| 91激情五月开心| 国产精产国品一二三在观看| 久久大香蕉| 逼里香不卡| 99这里只有精品| 婷婷五月欧美| 都市激情小说婷婷| 色欲一区二区三区精品A片| www.99热在线| 天天爽,夜夜爽| 超碰免费人人| 九九色影视| 婷婷丁香五月在线播放| 91无码色色| 天天日天天做天天舔| 精品久久66| 九月婷婷| 天天开心婷婷丁香五月| 欧美日韩成人在线| 97色干| 99热精品中文字幕| 激情五月九九九| 婷婷色香六月综合激情| 一本大道嫩草AV无码专区| 久久99视频| 天天透天天爱| 狠狠狠狠青草| 欧美人人草| 国产欧美日韩综合精品一区二区| 91艹人| 99热这里只有精品2| 4399高清无码视频| 久青草影院| 亚洲欧洲美女在线观| 热的国产,热的综合,热的有码| 五月丁香综合啪啪| 久久九区| 日本色道视频网站| 97操视频| 色色激情| 久久这里只有精彩| 五月天激情小说| 久99热| 五月婷中文字幕| 久七香蕉| 久久婷婷五月综合色奶水99啪| 色婷婷五月成人网| 日本狠狠干| 国产第99页| 婷婷五月激情视频| 亚洲4区国产欧美| 丁香五月成人社区| 五月丁香毛片| 99激情网| 五月丁香色婷婷婷基地| 国产乱人偷精品人妻A片| 丁香婷婷人妻| www.色五月| 开心五月丁香综合久久| 国产免费性爱| 日日夜夜久| 色综合99色| 九九热视频免费| 中文婷婷狠狠| 欧美性爱中文字幕| 超碰AV在线| 日本超碰在线| 天天色·欧美| 97日韩无套内| 亚洲第一第二网站| 日本视频99| 高清视频一区| 五月丁香亭亭成人电影| 久久九九思思| 欧美精品啪啪| 五月天色婷婷激情综合| 五月Huangsewang| 久久九九在线视频| 日本久久精品18| 日韩啪| 91久久婷婷| 天天爽夜夜操| 26UUU精品一区二区c〇m| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 五月天精品视频| 狠狠久久婷| 色欲久久久久久综合网综合网| 五月色婷婷中文字幕| 久久机热/这里只有精品| 天天艹天天综合网| 99在线视频操999| 欧美成人色婷婷| 色色色区| 丁香五月激情五月| 婷婷五月天在线综合| 黑人无码一区| 嫩草AV久久伊人妇女超级A| 狠色狠色狠色狠色狠色网| 久久九九99视频| 欧美性爱五月天| 91丨九色丨高潮丰满日本| 九九碰九九爱97超碰| 亚洲人妻一区二区| 五月丁香啪啪啪啪| 爆乳熟妇一区二区三区四区| 五月激情小说| 伊人五月人妻精品| 亚洲人妻Av| 成人在线日韩| 丁香六月婷婷五月婷婷| 丁香五月天色| 亚洲xx网| 99人妻碰碰久久久禁片| 婷婷综合五月天| 一本道综合网| 精品在线网站| 色色色色色色色五月| 综合大香蕉| 99热精品一区| 天天爽人人综合免费7799| 国产真实乱了老女人视频| 五月丁香六月婷婷啪啪| 亚洲 在线 性爱| 大香蕉人人人| 一本色道久久88加勒比| 伊人婷婷五月天| 丁香涩涩五月天| 91婷婷搞| 久久婷婷五月综合色天| 亚洲精品字幕在线观看| 99综合久久| 思思热99在线| 婷婷在线观看五月天在线视频| 伊人大香蕉毛片| 欧美婷婷综合| 中文AV在线观看| 国产热精品| 欧美色图天堂网| 精品国婬伦V无码久久久| 91欧美日韩综合| 丁香婷婷色五月合集| 99re热在线视频| 丁香深五月婷婷| 青青草成人网| 激情久久肏屄视频| 日韩色色视频| www,婷婷五月天,com| 91色在线/日韩| 色婷婷av综合网| 婷婷五月花| 激情综合色婷婷啪啪六月天| 久久66精品| 婷婷五月天免费小说| 久艹久| 人人插操| 96精品成人无码A片观看金桔 | 丁香五月五月婷婷| 色噜噜狠狠插综合| 五月停停丁香| 五月天全国最大成人网| 婷婷五六日| 亚洲黄色影视| 九色七七| 九月综合| 婷婷丁香社区| 久久九精品| 久久3级片| 国产AV一区二区三区日韩| 99欧美| 日本熟妇精品99| 99精品色| 欧美色色色色色| 五月婷婷色情| 婷婷成人五月天一区| 精品五月丁香| 日韩好吊操| 欧洲亚洲免费视频9| www.综合久久| 99精品高潮| 99视频极品在线香蕉| 99久久婷婷国产综合精品| 99精品网| 成人中文网| 色99色| 伊人久久艹| 日日爽日日| 91超碰九色| 91九色国产在线| 蜜臀av粉嫩av懂色av| 激情五月天偷拍综合网| 狠狠干狠狠干| 激情图片婷婷| 九九色综合九九色| 97色色色| 国产偷人爽久久久久久老妇APP| 久久九九网| 久久久这里有精品| 婷婷综合五月| www.97视频| 黄网在线免费| 色在线免费观看| 色婷婷亚洲综合天堂| 婷婷激情五月天桃花网| 亚洲色婷婷久久99精品91| www.久久色.com| 亚洲影院婷婷色| 色月丁| 偷拍九九五月丁香婷婷| -91九色大屁股| 久久综合九九| 五月天婷婷爱丁香中文字幕| 我爱va亚洲va52| 快色t v在线入口| 99九九精品视频| 婷婷五月综合视频免费播放| 91九色欧美| 五月天激情久久| 91九色国产| 99热在线精品观看| 少妇出轨做爰高潮A片| 丁香五月亚洲综合丝袜| 五月丁香久久婷| 欧美视频五区| 思思网站| 97丁香五月| 色婷婷在线视频| 中文字幕在线观看视频www| 久久婷婷影院| 丁香五月天91| 久99久热| 五月婷婷丁香伦理网| 色狠狠色狠狠| 九月婷婷激情| 五月天婷婷综合| 182.t午在线观看| 99色五月| 五月丁香WWW| 亚洲天码视频www蛋播视频| 激情图片婷婷丁香五月| 五月天色图| 噢美99| 99视频在线观看网址| 九月丁香| 九九热国产| 97精品欧美91久久久久久久| 荫道BBWBBB高潮潮喷| 国产超碰av| 久久99操| 五月天深爱激情网| 任你草| 亚洲成av人影院| 激情综合网站| 91精品熟女| 六月婷婷中文字幕| 免费无码毛片一区二区A片 | 色久丁香五| 深爱激情六月天| 99色综合久久| 婷婷综合久久| 亚亚州久久高潮| 99热97| 狠狠色噜噜色狠狠狠综合色| 五月色婷婷亚洲| 久热视频这里只有精品| 婷婷丁香久久| 性生活视频98791| 五月丁香六月婷婷免费视频| 五月丁香av中文| 婷婷色五月大香蕉在线| 激情丁香五月天综合| 97婷婷五月| 99久久网站| 丁香97综合| 亚洲精品va| 99亚洲精品视频| 日韩成人精品中文字幕| 欧美日韩国产一区| 欧美3AaAa大片| 涩综合婷婷| 99精品视频推荐| 成人网站免费sxj| 久九色| 婷婷五月另类网站| 色综合开心五月深爱五月| 久久婷婷五月天激情四射| 99燥99日| 狠狠夜夜五月丁香| 五月丁香六月婷| 日本道久久91| 国产26uuu视频| 丁香五月影院| 五月婷婷久久大香蕉| 激情六月一二| 亚洲精品久久久无码| 99久久综合网| 猫咪伊人久久| 婷婷久久图片| 夜丁香五月婷婷| 99视频内射三四| 激情床戏| 天天综合 99久久婷婷| 久久久天堂国产精品女人| 99精品国产在热久久| 五月婷婷深深爱| 久久综合9| 99热这里只有精品33| 五月激情六月丁香| 草草视频91| 久久丁香五月| 99热综合色图| 五月婷婷激情综合| 久婷首页| 蜜臀99精品| 丁香社92视频| 五月丁香中文字幕| 中文字幕人妻AV| 狠狠五月激情婷婷直播片| 中文字幕人成乱码在线观看| 操笔无码| 被强行糟蹋的女人A片| 99噜噜噜在线播放| 可以免费观看的av| 久久精品色| 五月丁香六月婷婷网| 99热91| 久久色婷婷| 99激情在线| www.久久爱.com| 91综合在线视频| 深爱激情五月网| 激情综合婷婷久久| 国产精品色色| 丁香五月首页| 狠狠操综合| 丁香五月,开心五月,成人婷婷| 久久久18| 女性自慰系列第五页| 五月天激情小说| www.色九月| 日本97久久久精品| 色久女| 任我肏| 日日爽日日| site:xiongshengzz.com| 99精品免费| 久久五月天综合视频网站| 激情综合五月婷婷| 丁香五月天五码婷婷| av在线播放网站| 色六月天| 欧美日本99| 婷婷五月天视频| 五月婷婷啪啪啪| 精品一二三区久久AAA片| 99玖玖在线视频| 天天插天天很| 欧在线一区| 中文字幕激情综合| 激情婷婷五月久久| 黄色中文字目| 色色色com| 色婷婷五月在线| 五月婷婷中文| 五月天伊人日日噜影片AV| 久久加勤综合| 99热精品在线观看| 最新日本A片| 9久热精品在线视频| 99在线亚洲| 激情九色| 婷婷丁香六月天| 久久这里都是精品视频| 五月丁香五月丁香五月丁香五月丁香91| 五月婷婷综合久久| 日操五月婷| 天综合日日夜综合7799| 久久只有18视频| 白天AV月月| 色婷婷综合在线| 亚洲色啪| 日日操天天爽| 91久久婷婷| 五月丁香婷婷色啪| 激情综合网五月丁香| 色婷婷深爱五月| 婷婷伊人綜合| 97人人干| 国产性爱一级| 九九这里精品| 九九色人| 天天久久九九| 色婷婷九月| 色五月综合在线| 99re热精品视频国| 亚洲四色五月| 在线理论片| 99热网址| 亚洲婷婷成人五月天| 99热主页日本| 伊人天堂婷婷| 九九香蕉网| 天天操人人干| 岛国资源网| 狠狠爱婷婷爱| 亚州第一黄网| 性爱视频久久| 丁香五月综合| 天天日天天日天天搞| www.婷婷| 五月叮香啪| 欧美大片| 亚洲愉拍99热成人精品| 六月婷婷久久| wwccc久久久| 91爱操| 一区二区三区四区牛| 99热只有| www.久久爱| 色五婷婷开心缴| 婷婷AV丁香| 超碰男人色| 在线看AV| 全部老头和老太XXXXX| www.五月天婷婷| www五月天激情com| 婷婷色播六月无码| 丁香五月婷婷啪啪| 99精品国产在热久久婷婷| 婷婷五月激情黄色| 五月天激情网图片| 色综合激情| 亚洲视频操| 丁香六月亭亭久久综合| 开心婷婷五| 色综合婷婷| 99久久終合| 四川女人毛多水多A片| 亚洲在线综合| 色噜噜狠噜噜视频| 婷婷开心激情综合五月天| 第四色色六月色综合| 九九大香蕉黄色影院| 婷婷在线中文字幕| 99噜噜噜在线播放| 免费黄色视频网址| 99re视频在线播放| 五月丁香中文字幕| 六月婷婷视频| 国产人妻操逼| 久久总和99| 日本在线99| 亚洲岛国电影| 色五月婷婷777| 激情色色| 婷婷操逼| 亚洲最大视频| 色色丁香婷婷| 亚洲综合九九| 大香蕉五月婷婷| 综合99久久天天综合| 开心五月天激情网站| 色婷五月天网站| 丁香五月综合久久八| av色婷婷| 九月丁香| ww久久| 丁香九月婷婷综合| 黄色成人网站在线播放| av在线免费播放| 色五月偷偷| 综合色在线| 97啪在线观看视频| 1024亚洲无码| 五月天婷婷网站| 激情 久久 婷婷| 99re资源在线视频导航| 丁香五月大香蕉在线99| 婷婷伊人综合| Av在线不卡一区| CAoub青青超碰| 一起操 91N.com| 丁香婷婷五月综合欧美另类| 久久丁香九| 五月丁香A∨在线| 国产亚洲av片| 日韩黄色AV无码| 六月久久婷婷| 中文无码婷婷| 99狠狠色| 欧美日韩91| 99热在线观看| 深爱网深爱综合网| 天天插夜夜爽| 中文在线视频久1| 丁香五月婷老师| 女人被男人吃奶到高潮| 视频一二区| 五月丁香黄色视频| 久久婷婷五月天| 亚洲深喉AV| 播丁香五月婷婷欧美| www天堂99| a在线免费v| 婷婷五月综激情| 丁香五月婷婷深五月| 丁香五月网络网络| 五月天婷婷丁香六月| 五月天久久91| 五月丁香综合激情网| 丁香五月av| 久99热| 九九草草逼| 日韩操啪| 狠狠干综合| 狠狠擼综合| 夜夜夜夜撸夜夜操| 伊人婷婷综合| 日本欧美成人片AAAA| 日本性视频| 五月丁香六月婷婷啪啪| 亚洲一个色| 五月停停丁香| 久久色五月| 国产精品涩涩涩视频网站| 丁香激情综合| 98色花堂98t.R| 99久久国产成人精品| 午夜电影网VA内射| 91热99| 成人片黄网站色大片免费毛片| 9久热在线精品| 国产激情AV| 青青福利网| 五月综合激情| 狠狠CAO日日穞夜夜穞AV| 婷婷丁香五月基地| 影音先锋xfplay资源男人网| 天天干天天叉| 人人爱人人草| 亚洲国产黄色电影| 99热网址| 婷婷娱乐丁香综合网| 久久色五月天| 丁香久久在线| 五月婷婷三级| 26uuu亚洲精品国产| 国产欧美第五十五页| 国产亚洲AV人片在线| 五月丁香欧美综合| 天天操夜夜爽| 久热99| 激情淫乱男女| 熟女重口味αV| 精品久热69| 欧美黑人巨大性生话| 丁香婷婷九月| 五月丁香 啪啪啪| 人人摸人人搞| 久啪欧美| 久色网五月| 色爱五月天| 亚洲色婷婷久久99精品91| 丁香五月AV综合| 久久色天堂| 超碰人人插| 色人久久| 久久九九热视频| 丁香六月啪啪| 国产精品色婷婷久久久精品| 五月天堂婷婷| 综合网五月| www.com色播五月天| 日韩精品色| 思思热99热| 4399在线观看免费高清黄色视频| 久久这里只有精品视频26| 亚洲五月天婷婷| 久久超级碰视频| 婷婷射婷婷舔| 精品一二三区久久AAA片| 色99在线视频| 五月天六月色| 狠狠狠狠青草| 婷婷六月插屄激情| 精品久热| 伊人干综合| 丁香五月婷婷av| 97涩婷婷| 热99只有里视频| 亚洲精品无码一区二区| 九九国产精视频| 五月婷婷偷拍| 色玖玖综合| 日日日日操| 999热视频精品99免费在线| 综合激情网五月激情| 久久狠狠干| 琪琪色五月天| 玖玖五月丁香| www.91AV.COM| 丁香桃色网| 九久九精品| 色射婷婷五月天| 精品一二三区久久AAA片| 婷婷五月天成人娱乐| 五月婷婷av| 九九综合| 久久性操| 91精品久久久久久77777| 狠狠色噜噜狠狠狠狠综合| 久久九⑨| 天天狠天天叉| 91久久免费| 99热在这里只有精品| 99re在线免费视频| 欧洲第一久色| 色欲色香综合网站| 免费视频这里只有精品| 婷婷中文综合网| 日日撸日日操| YW无码| 99视频网| www.色色com| 激情五月天小说| 9超碰在线| 五月花免费视频| 久久9热| 丁香五月开心亚洲| 丁香五月天黄色片| 夜夜 操无码| 五月婷婷基地| 五月天婷婷视频| 狠狠艹狠狠艹| 丁香六月综合激情| 欧美综合在线五月天色婷婷| 五月天社区婷婷| 丁香婷婷六月在线资源观看| 丁香婷婷综合喷| 六月综合在线| 人人操人人操919999| 区美毛片子| 99re6热在线精品视频播放速度| 亚洲色在线观看| 日本女va| 亚洲无码性爱| 丁香五月色网| 色999亚洲人成色| 精品人妻伦九区久久AAA片| 欧美综合婷婷网| 91丨九色丨国产打屁股网站| 五月亚洲| 日本91在线| 婷婷六月丁| 五五月五月| 亚洲传媒在线观看| 五月婷婷六月丁香玖玖玫瑰91| 2017狠狠干| 激情五月丁香五月| 丁香五月丁香伊人| 九月久久婷婷| 97操操操| 亚洲久久婷婷丁香五月天| 免费观看2018www黄色操逼网站| 99精品免费| 成人va在线观看视频| 亚洲精品V天堂中文字幕| 婷婷情色激情| 美女黄频aⅴ视频| 欧美电影在线观看| 综合五月亭亭9| 成人视频免费观看高清完整版在线观看| 九九这里是免费的视频5| 99免费综合网| 婷婷丁香色女人| 91婷婷丁香五月| 丁香五月六月婷婷自拍| 综合久久综合综合| 另类在线| 五月天停停成人网| 九九狠狠干| 逼特逼在线免费播放| 丁香桃色网| 色综合爽| 热久久这里只有三级视频| 99色天堂| 丁香五月亚洲综合| 九九综合伊人| 人妻丰满精品一区二区A片| 玖玖精品视频| 26uuu色噜噜精品一区| 色激情网| 伊人五月天| 99热这里只有精品官网| 丁香久久| 色天使久久综合| 五月天婷婷久久视频| 婷婷丁香五月天在线| 日本不卡中文字幕| 大香蕉久久视频久久视频 | 成人AV播放| 99福利导航| 综合图区激情| 丁香婷婷婷婷十二月在线观看视频| 六月婷婷中文字幕| 激情网婷婷五月天| 久久狠色噜噜狠狠狠狠97| 五月丁香激| 无码免费人妻A片AAA毛片西瓜| 国产精品成人AV在线| 69婷婷丁香午夜| www久久99| 婷婷五月五月丁香| 五月天色色网站| 亚洲人成色A777777在线观看| 亚洲精品乱码久久久久99| 大香蕉婷婷丁香| 五月婷婷色在线| 婷婷五月婷婷| 亚洲综合另类| 青青草原99热| 天天五月香欧美| 啪啪综合| 激情AV中文| 午夜亚洲AV日韩无码| www夜夜| 99网| 精品,99| 亚洲国产精品成人免费一区久久久在线观看AAAA | 91婷婷丁香| 婷婷五月激情视频在线| 天天干肏夜夜| ′久久99一| tingtingseav| 五月天大香蕉av| 中文AV网站| 99riAV国产精品视频| 亚洲va在线| 婷婷五月天xxx| 男人視頻站| 人人综合色| 婷婷综合中文| 超碰av在线| 青青草成人网| 色六月婷婷| A1片久久久| 天天爱天天爽| www激情五月天| 五月婷婷在线网站| 思思热在线视频观看精品| 色墦五月丁香| 国产操B视频| 色娸娸综合网| 日韩黄色电影| ..真实国产乱子伦毛片| 天天综合精品| 欧美色色色色色| 久久作爱| 久久综合影院| 丁香激激情网| 五月婷丁香久久久| 欧日美女Va| 综合网色| 色色综合色视频| 激情婷婷丁香五月天小说| 久操大| 丁香婷婷五月激情| 五月久久网| a九九热www| www.91AV.com| 久草网大香视频| 狠狠干在线| 综合网狠狠| 日本天堂免费99| 99热很操老逼| 91久久色| 99熟女视频| 国产成人综合在线| 97干在线| 五月天婷婷色色| 都市激情蜜桃婷婷五月天| 综合激情五月综合激情五月激情1| 丁香综合婷婷开心激情网| 少妇丁香婷婷 | 色婷婷中文字母五月丁香| 操笔无码| 99色啊| 思思热在线视频99| 国产色99| 色婷婷五月在线| 99操免费视频| 99九无网码| 五月天成人综合| 第四色在线观看| 搡BBBB搡BBB搡18| 丁香五月欧美婷婷| 九九综合88| 99re在线视频| 中文精品久久久久人妻不| 99综合色色色| 狠狠色丁香婷婷综合久久97AV| 色五月丁香婷婷综合| 这里只有精品免费观看网占| 久久人人妻| 六月撸婷婷| 日日夜夜狠狠| 无码激情AAAAA片-区区| 九九色黄色| 日本色久| 婷婷永久在线| 伊人成人宗合网| 淫荡综合网| h亚洲| 日本人妻A片成人免费看片| 欧美S码亚洲码精品M码| 色五月美女| 天堂色色色| 久久永久网址| 开心五月深爱激情| 婷婷五月天堂| 99热6这里只有精品| 另类激情综合| 欧美日本免费一道免费视频| 久久国产AV| 婷婷综合色色| 狠狠干五码| 久久婷婷亚洲| 99热免| 99久久国产综合精品五月天喷水\| 日本色色影院| 久久久人妻不卡| 五月色丁香激情| 丁香激情五月天| 欧美成人精品三区综合A片| 国产亚洲精品久久久久久牛牛| 91色色色视频| 色九九综合| 99精品在线下载| 超碰三级片| 丰满少妇猛烈A片免费看观看| 丁香五月婷婷久久久| 久久婷婷五月天| 五月综合激情综合久| 99色精品| 超碰在线日夜| 丁香玖玖| 狠狠色五月| 99re热在线视频| 国产毛片精品一区二区色欲黄A片| 十区AV| 99色在线视频| 婷婷五月丁香伊人| 丁香六月啪| 99re视频在线精品| 99久久66| www.色婷婷.com| 色激情五月天| 久久hd| 婷婷五月免费在线| 色五月婷婷在线| 丁香五月玖玖| 九九人人操| 99色性爰网络| 国产成人精品一区二三区熟女在线| 九九激情| 婷婷五月天日逼| 五月天丁香网站| 欧美综合激情| 日韩色色小视频| 亚洲婷婷激情综合激情999精品| 日本三级中国三级99人妇网站| 丁香久月| 狠狠操天天操综合| 亚洲中文字幕AV| 精品动漫 无码av| 激情婷婷五月女| 婷婷丁香花五月天| 丁J香六月首页| 五月婷婷新网站| 婷婷五月天情色| 久久这里只有精品视频15 | 成片免费播放| 狠狠色婷婷丁香五月| 成人婷婷色五月天| 婷婷丁香在线| 99ri国产精品| 成人欧美Va| 五月丁香大香蕉| 色婷婷久久天天性爱| 无码任你操| 天天射天天操天天干| 亚洲午夜精品久久久久久人妖| 91.com男女操| 国产精品国产成人国产三级| 丁香五月性| 五月丁香啪综合| 五月丁香另类网| 就爱干 在线| 午夜丁香| 九九久久99精品免费观看www| 天天做天天爱天天爽综合网| 99热最新国内| 99热国内| 97人人超| 99久久精彩视频。| 九色自拍| 日韩国产在线免费观看| 婷婷五月天激情免费在线观看| 少妇AB又爽又紧无码网站| 99热最新地址在线| 久99热| 五月丁香亭亭操逼| 六月婷婷啪啪| 熟女91九色| 99精品视频网站| 中文字幕欧美精品久久| 亚洲激情网站| 天海翼中文字幕高| 深爱激情网婷婷| 欧美性生交XXXXX无码小说| 日韩九区| 9久久精品| 97人人超| 色综合激情| 丁香五月综合| 激情五月小说婷婷| 九九AV在线| 91超碰九色| 亚洲精品成人| 五月丁香激情四射| 99这里有精品视频| 草草视频91| 99久.| 亚洲无码色色| 爱性综合网| 婷婷亚洲天堂| 综合久久婷婷五月丁香| 久久久婷婷婷| 5月丁香综合网| 精品人妻伦一二三区久久| 婷婷激情六月综合| 婷婷色五月综合| 丁香五月激情视频在线| 久久婷综| va婷婷| 婷婷成人在线| 婷婷五月AV| 丁香五月网站| 五月综合激情| www.狠狠干| 五月婷婷激情啪啪| 色婷婷九月综合| 色就色94欧美setu| 97色色综合| 97干在线播放| 久久精典| 五月激情丁香久久综合网| 人妻丰满精品一区二区A片| 色国产五月| 99碰碰碰| 色婷婷综合亚洲| 超碰97人人操| 天天操综合网| 色狠狠色噜噜噜a天堂一区| 超级碰碰视频无码| 五月婷婷深深爱| 九九碰九九爱97超碰| 狠狠精品干练久久久无码中文字幕 | www久久艹| 8区视频在线| 亚洲中文无码成人| 五月天婷婷青青草| 九九热99热| 色色丁香婷婷综合| 嫩草AV久久伊人妇女超级A| 丁香婷婷综合激情五月色| 精品动漫 无码av| 99九九久久| 激情综合激情五月| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 少妇熟女视频一区二区三区| 人妻 性久久久久久| 青青久在线视频免费观看| 日韩视频99| 欧美婷婷| 日本一级淫| 亚洲五月天婷婷| 五月天激情综合网俺也去| 成人av在线网| 狠狠干无码| 色婷五月| www.wuyuetian啪啪| 成人在线日韩欧美| 日韩色色网| 婷婷热色| a在线观看| www.狠狠操.con| 热久久色| 亚洲精品久久久久久久久久吃药 | 六月婷综合| 91超碰九色| 亚洲熟妇AV综合网五月丁香伊人 | 丁香五月天社区| 婷婷丁香五月亚洲免费| 91热99| 婷婷.com| 97色天堂| 五月丁香婷中文| 97人人搞| 久久98| 色五月婷婷很很操| 婷婷激情五月天7| 五月丁香人妻| 亚洲综合色网| 综合久久99| 五月婷婷久久激情| 欧洲亚洲午夜| 国产午夜精品一区二区三区四区| 女人天堂AV| 国产五月婷| 久久婷婷网站| 开心五月丁香婷婷| 五月丁香啪综合| 在线观看国产高清视频免费网站| 色狠狠综合入口| VA日本视频| 欧美日本韩国亚洲| 色五月综合激情| 色丁香五月天婷婷| 思思热99er在线视频| 色五月中文字幕| 校花娇喘呻吟校长陈若雪视频| 91色噜噜狠狠狠狠色综合| 俺去也在线www色官网| 九九色欲网| 丁香婷婷五月天成人| 色五月婷婷五月天| 成人综合AV| 日逼免费视频| 五月婷婷丁香啪啪| 五月婷婷婷综合网| 大大香蕉综合在线| 久久久久9| 成人版视频在线观看| 79色色色色| 久久久er热| 天堂在线9| 久久久久久18| 色五月婷婷7777| 九九无码| 丁香六月五月婷婷| 婷婷五月开心中文字幕色| 超碰人人色| 久婷视频| 九久久九精品视频| 六月婷婷五月丁香| 婷婷金品综合视频| 日本丁香五月| 五月天激情子轮| 白天AV月月| 久久性爱视频免费| 婷婷综合色图| pom538精品视频|