KindEditor解决上传视频不能在手机端显示的问题
KindEditor自帶的上傳視頻生成的HTML代碼為<embed>,在手機(jī)端并不支持。于是可以自己在控件里增加生成video標(biāo)簽相關(guān)代碼。
?
參考https://www.jianshu.com/p/047198ffed92。。
?
然而對(duì)著修改后沒(méi)有成功,可能是那里沒(méi)有改對(duì)吧。依然生成的是<embed>。當(dāng)時(shí)由于時(shí)間趕,于是用了個(gè)簡(jiǎn)單的辦法:
?
原控件不變的情況下
?
1、上傳的地方修改視頻格式。僅上傳支持手機(jī)格式的
//定義允許上傳的文件擴(kuò)展名 HashMap<String, String> extMap = new HashMap<String, String>(); extMap.put("image", "gif,jpg,jpeg,png,bmp"); extMap.put("flash", "swf,flv"); extMap.put("media", "rmvb,mp4,mpg4,ogg,WebM");//原來(lái)支持下面多個(gè)格式,現(xiàn)在僅支持手機(jī)可以看的幾個(gè)格式 //extMap.put("media", "swf,flv,mp3,wav,wma,wmv,mid,avi,mpg,asf,rm,rmvb,mp4"); extMap.put("file", "doc,docx,xls,xlsx,ppt,htm,html,txt,zip,rar,gz,bz2"); extMap.put("htmlfvideo","swf,flv,mp3,wav,wma,wmv,mid,avi,mpg,asf,rm,rmvb,mp4,ogg,WebM,mpg4");2、在頁(yè)面展示的地方,把展示的html富文本中embed直接替換成video。居然好使
?
var strR= str.replace(/"/g,"'").replace(/embed/g,"video controls");
?
當(dāng)然這個(gè)方法指標(biāo)不治本,等回頭有空了,再研究一下,直接在控件里生成video的辦法。
?
最后補(bǔ)一個(gè),HTML富文本存數(shù)據(jù)庫(kù)和展示的問(wèn)題。
?
在網(wǎng)上看了好多各種轉(zhuǎn)義。我的辦法是這樣的
?
1、整體不轉(zhuǎn)義傳到后臺(tái)后。把引號(hào)替換成對(duì)應(yīng)的形式。然后直接存入數(shù)據(jù)庫(kù)
public static final String filterHtml(String str){str=str.replaceAll("\"", """);//str=str.replaceAll("\\&", "&").replaceAll("<", "<").replaceAll("\"", """).replaceAll(">", ">").replace("'", "'");return str;}2、在數(shù)據(jù)庫(kù)的數(shù)據(jù)形式為
3、展示頁(yè)面的時(shí)候,把富文本數(shù)據(jù)中對(duì)應(yīng)引號(hào)再轉(zhuǎn)義回來(lái)
$(function() {var pbArticle = replaceStr1('${pbArticle}');//文章getInfoArticle(pbArticle);//初始化文章 });function getInfoArticle(pbArticle){//初始化文章if(pbArticle!=''){var html = "";var data = JSON.parse(pbArticle);$("#title").html(data.title);$("#pubTime").html(data.pubTime);$("#content").html(data.content);$("#articleId").val(data.id);if("${isColection}"=="0"){//o是1否$("#collectionId").attr("isColection","0");$("#collectionId").attr("src","<%=request.getContextPath() %>/app/fonts/images/star_red.png");}} }//這里就是轉(zhuǎn)義文章,視頻和引號(hào)的問(wèn)題 function replaceStr1(str){debugger;var strR= str.replace(/"/g,"'").replace(/embed/g,"video controls");var strR1 = strR.replace(/\s+/g,"\ ");var strR2 = strR1.replace(/\\/g,"\\\\");console.info(strR2); /* var json = eval(strR2); */return strR2; }
?
轉(zhuǎn)載于:https://www.cnblogs.com/minzhousblogs/p/9705782.html
總結(jié)
以上是生活随笔為你收集整理的KindEditor解决上传视频不能在手机端显示的问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 酷乐视s3刷错版本如何办
- 下一篇: 王者荣耀怎么看皮肤购买记录