!!!每次改动后记得,清除一下浏览器缓存再试 !!!  

4点:

1.修复编辑时视频不能预览问题;

2.插入视频的时候。在预览的窗口提示 “输入的视频地址有误,请检查后再试!”

3.ueditor 解决上传视频回显 src链接丢失问题

4.ueditor 自定义插入视频封面(页面加载时显示)

1. 修复编辑时视频不能预览问题

ueditor.all.js 中 ,搜索   me.fireEvent('beforesetcontent', html);

将下列注释

//修复编辑是视频不能预览问题
// me.fireEvent('beforesetcontent', html);
// var root = UE.htmlparser(html);
// me.filterInputRule(root);
// html = root.toHtml();

搜索 me.commands["insertvideo"]  

html.push(creatInsertStr( vi.url, vi.width || 420,  vi.height || 280, id + i, null, cl, 'image'));

改成

html.push(creatInsertStr( vi.url, vi.width || 420,  vi.height || 280, id + i, null, cl, 'video'));

2. 插入视频的时候。在预览的窗口提示 “输入的视频地址有误,请检查后再试!”如:

解决方法:

1.在ueditor.all.js中 搜索   me.commands["insertvideo"]  

//此处将 edui-faked-video 改为 edui-faked,防止后面将此处替换为image标签

// 此处将image改为embed/video  ,实现  1.实时预览视频,  2.修复了第一次插入视频保存后,刷新后再保存会导致视频丢失的bug

me.commands["insertvideo"] = {
execCommand: function (cmd, videoObjs, type){
videoObjs = utils.isArray(videoObjs)?videoObjs:[videoObjs];
var html = [],id = 'tmpVedio', cl;
for(var i=0,vi,len = videoObjs.length;i<len;i++){
vi = videoObjs[i];
//cl = (type == 'upload' ? 'edui-upload-video video-js vjs-default-skin':'edui-faked-video');
//html.push(creatInsertStr( vi.url, vi.width || 420, vi.height || 280, id + i, null, cl, 'image')); //此处将 edui-faked-video 改为 edui-faked,防止后面将此处替换为image标签
cl = (type == 'upload' ? 'edui-upload-video video-js vjs-default-skin':'edui-faked');
// 此处将image改为embed/video , 实现实时预览视频,且修复了第一次插入视频保存后,刷新后再保存会导致视频丢失的bug
html.push(creatInsertStr( vi.url, vi.width || 420, vi.height || 280, id + i, null, cl, 'video'));
}
me.execCommand("inserthtml",html.join(""),true);
var rng = this.selection.getRange();
...

2.在ueditor.config.js中 搜索 whitList  

img 字段中 添加"_url"

img:['src', 'alt', 'title', 'width', 'height', 'id', '_src','_url', 'loadingclass', 'class', 'data-latex', 'style', 'url'],//加了style和url

video 后面添加如下规则字段(video不要忘记加逗号)

source: ['src', 'type'],

embed: ['type', 'class', 'pluginspage', 'src', 'width', 'height', 'align', 'style', 'wmode', 'play','autoplay','loop', 'menu', 'allowscriptaccess', 'allowfullscreen', 'controls', 'preload'],

iframe: ['src', 'class', 'height', 'width', 'max-width', 'max-height', 'align', 'frameborder', 'allowfullscreen']  

3.在dialogs/video/video.js   搜索 function createPreviewVideo(url){     把下面的内容替换

function createPreviewVideo(url){
if ( !url )return;
var conUrl = convert_url(url);
conUrl = utils.unhtmlForUrl(conUrl);
$G("preview").innerHTML =
// '<div class="previewMsg"><span>'+lang.urlError+'</span></div>'+
  // '<embed class="previewVideo" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"' +
   // ' src="' + conUrl + '"' +
  // ' width="' + 420 + '"' +
  // ' height="' + 280 + '"' +
  // ' wmode="transparent" play="true" loop="false" menu="false" allowscriptaccess="never" allowfullscreen="true" >' +
  // '</embed>';   //换成video标签
'<video' +
' src="' + conUrl + '"' +
' width="' + 420 + '"' +
' height="' + 280 + '"' +
' autoplay' +
' controls="controls">'+
'</video>'; }

3. ueditor 解决上传视频回显 src链接丢失问题

切换 html 按钮src链接丢失问题

ueditor.config.js文件的 361行左右  ,

inputXssFilter:true 修改为 ,inputXssFilter:false

     // xss 过滤是否开启,inserthtml等操作
,xssFilterRules: true
//input xss过滤
//,inputXssFilter: true
,inputXssFilter: false //解决视频回显src消失
//output xss过滤
,outputXssFilter: true
// xss过滤白名单 名单来源: https://raw.githubusercontent.com/leizongmin/js-xss/master/lib/default.js
,whitList: {
...

ueditor.all.js 中  搜索 编辑器默认的过滤转换机制 or UE.plugins['defaultfilter']

加上return

// plugins/defaultfilter.js
///import core
///plugin 编辑器默认的过滤转换机制
UE.plugins['defaultfilter'] = function () {
return;
var me = this;
me.setOpt({
...

找到  case 'img':  ,注释代码

case 'img':
//todo base64暂时去掉,后边做远程图片上传后,干掉这个
// if (val = node.getAttr('src')) {
// if (/^data:/.test(val)) {
// node.parentNode.removeChild(node);
// break;
// }
// }
// node.setAttr('_src', node.getAttr('src'));
break;
...

4. ueditor 自定义插入视频封面(页面加载时显示)

预先保存一张封面到服务器   假设路径为  /static/images/video-poster.png

ueditor.config.js 中  搜索   whitList   在 video 中字段 添加 poster

video:  ['autoplay', '_src', 'poster', 'controls', 'loop', 'preload', 'src', 'height', 'width', 'class', 'style', 'id'], 

修改ueditor.all.js中 搜索    case 'video':    添加 poster  字段 (通过js获取当前域名,拼接上保存到服务器上的图片作为url)

           case 'embed':
//str = '<embed type="application/x-shockwave-flash" class="' + classname + '" pluginspage="http://www.macromedia.com/go/getflashplayer"' +
str = '<embed class="' + classname + '" pluginspage="http://www.macromedia.com/go/getflashplayer"' +
' src="' + utils.html(url) + '" width="' + width + '" height="' + height + '"' + (align ? ' style="float:' + align + '"': '') +
' wmode="transparent" play="true" loop="false" menu="false" allowscriptaccess="never" allowfullscreen="true" >';
break;
case 'video':
var ext = url.substr(url.lastIndexOf('.') + 1);
//当前域名window.location.protocol+"//"+window.location.host
var locationHost = window.location.protocol+"//"+window.location.host;
if(ext == 'ogv') ext = 'ogg';
str = '<video' + (id ? ' id="' + id + '"' : '') + ' class="' + classname + ' video-js" ' + (align ? ' style="float:' + align + '"': '') +
' controls preload="none" width="' + width + '" height="' + height +
'" poster="'+locationHost+'/static/images/video-poster.png" src="' + url + '" data-setup="{}">' +
'<source src="' + url + '" type="video/' + ext + '" /></video>';
break;

Ueditor 关于视频上传相关问题的更多相关文章

  1. ueditor编辑器视频上传不能预览的问题

    ps:来源 https://blog.csdn.net/eadela/article/details/76264168 修改ueditor.all.js文件 ueditor.all.js,17769行 ...

  2. 腾讯云点播视频存储(Web端视频上传)

    官方文档 前言 所谓视频上传,是指开发者或其用户将视频文件上传到点播的视频存储中,以便进行视频处理.分发等. 一.简介 腾讯云点播支持如下几种视频上传方式: 控制台上传:在点播控制台上进行操作,将本地 ...

  3. springboot整合ueditor实现图片上传和文件上传功能

    springboot整合ueditor实现图片上传和文件上传功能 写在前面: 在阅读本篇之前,请先按照我的这篇随笔完成对ueditor的前期配置工作: springboot+layui 整合百度富文本 ...

  4. 【腾讯云的1001种玩法】 Laravel 整合微视频上传管理能力,轻松打造视频App后台

    版权声明:本文由白宦成原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/108597001488193402 来源:腾云阁 h ...

  5. 11.nginx upload module + python django 后台 实现视频上传与切片

    1.需求:支持视频上传并切片,支持通过m3u8文件播放 2.视频切片的上一节已经谈过,这一节主要是视频上传的处理 第一步:upload-module模块安装 -----------首先下载upload ...

  6. ASP.NET MVC+LayUI视频上传

    前言: 前段时间在使用APS.NET MVC+LayUI做视频上传功能的时,发现当上传一些内存比较大的视频就会提示上传失败,后来通过查阅相关资料发现.NET MVC框架为考虑安全问题,在运行时对请求的 ...

  7. uEditor独立图片上传

    项目中.上传图片,非常希望有一款比较兼容的查件. 网上找了一些,图片上传立刻显示的js代码,还有uploadify.都会碰到这样那样的不兼容和其它头疼的问题. 后来想,干脆就用php的上传类最干脆.但 ...

  8. 从Ueditor跨域上传,总结的一次跨域上传的爬坑经历

    项目内其中一个管理后台需要发布文章,需要一个富文本编辑器,经过一番选择后,最终选择了百度的Ueditor. 由于上传的文件是上传到另一台专门存放图片等静态资源的服务器上面的,所以就涉及到了跨域上传. ...

  9. UEditor Flash文件上传-crossdomain.xml文件配置

    在使用UEditor富文本时,如果客户端的浏览器是低版本浏览器,如IE7.IE8等,UEditor的文件上传方式将会使用flash方式上传而不是html5,而flash在跨域时唯一的限制策略就是cro ...

随机推荐

  1. windows下apache + mod_wsgi + python部署flask接口服务

    windows下apache + mod_wsgi + python部署flask接口服务 用python3安装虚拟环境 为啥要装虚拟环境? 原因1:安装虚拟环境是为了使项目的环境和全局环境隔离开,在 ...

  2. CentOS7.5 系统最小化安装与初始化配置

    CentOS7.5 系统最小化安装与初始化配置 1.安装标准化的系统 1.1.系统安装期间的语言 选择:中文-简体中文,安装完成也会默认支持中文输出,便于管理 1.2.时区选择 亚洲上海,CST时区( ...

  3. MVC Core 使用TagHelper扩展几个插件

    未完待续... 案例1:按钮权限校验,无权限不显示,利用TagHelper控制元素是否输出 [HtmlTargetElement("tc-permission", TagStruc ...

  4. 【java异常】It's likely that neither a Result Type nor a Result Map was specified

    错误原因:mybatis配置文件没有返回类型参数 resultType 解决办法:resultType= 添加

  5. 日常运维--rsync同步工具

    rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而 ...

  6. base64和Blob互相转换

      1.base64转blob(二进制数据) /** * 将以base64的图片url数据转换为Blob * @param urlData 用url方式表示的base64图片数据 */ functio ...

  7. 【IntelliJ IDEA学习之三】IntelliJ IDEA常用快捷键

    版本:IntelliJIDEA2018.1.4 按场景列举一.打开设置CTRL + ALT + S:打开设置(File-->Settings...)Ctrl + Shift + Alt + S: ...

  8. 01.普通抖音新手如何从0开始入门3个月做到粉丝100w+

    普通抖音新手如何从0开始入门3个月做到粉丝100w+ 今年以来,明显感觉抖音很火,大有干掉微信,取代淘宝,京东的感觉,如今年轻人,一周7天有7天要玩抖音,所以说未来不可估量. 如是,2019春节以后, ...

  9. CentOS忘记密码修改方案以及centos卡在开机登录界面,命令失效的解决方法

    CentOS忘记密码修改方案 应用场景 linux管理员忘记root密码,需要进行找回操作. 注意事项:本文基于CentOS7.2环境进行操作的,由于CentOS的版本之间是有差异的,继续之前请先确定 ...

  10. [记录]安装.Net Framework 4.6.2时出现“无法建立到信任根颁发机构的证书链”解决方法

    在安装Microsoft .NET Framework 4.6.2脱机包时提示 无法建立到信任根颁发机构的证书链 实际上是要安装一个根证书.解决方案如下(因无法贴链接,可百度搜索“mamicode.c ...