【ngx-ueditor】百度编辑器按下Shift键不触发contentChange事件
背景:基于Angular 6,引入ngx-ueditor
发现现象:如果以Shift键+任意键结尾,则ngModel会丢失包含shift键的字符
例如:输入“ABC+AB++++”,则ngModel中只能获得“ABC+AB”,丢失最后的几个+号
原因:按下Shift键不触发编辑器的contentChange事件,
但如果输入shift键+任意键后,又输入其他正常字符,触发了contentChange事件,则可以获得完整文本,
即,若不是以shift键+任意键结尾,就不存在问题
解决方案一:在保存的时候,调用ueditor的getContent()方法,赋值给,接口参数,手动获取完整文本保存
Html:
<ueditor [(ngModel)]="content" #full_content></ueditor>
定义ViewChild:
@ViewChild('full_content') full_content: UEditorComponent;
保存的时候,获取完整文本,传到接口参数:
let content = this.full_content.Instance.getContent();
缺点:每次使用ueditor插件都要在提交接口的时候,再获取一次完整文本,代码重复,且对开发人员来说,Bug修复需要修改每个使用uEditor的页面,繁琐,易出错
解决方案二: 需要修改Ueditor.all.js(V1.4.3.3版本)文件的三处位置,具体如下:
7487行:删除“|| evt.shiftKey”条件判断;
14390行:删除me.keydown事件的“ && !evt.shiftKey”条件判断;
14429行:删除me.keydown事件的“&& !evt.shiftKey”条件判断;
但由于考虑修改插件源码不利于插件维护和插件升级,故没有采取第二种方案。
参考资料:https://github.com/cipchk/ngx-ueditor/blob/master/README.md
转载于:https://www.cnblogs.com/alwaysblog/p/11283752.html
【ngx-ueditor】百度编辑器按下Shift键不触发contentChange事件相关推荐
- ueditor百度编辑器常见报错的解决方法
如果是第一次使用ueditor百度编辑器,或者对它不熟悉的情况下使用,会出现一些常见问题和报错.怎么使用建议参考ueditor官网,这里只谈一些常见错误. 问题:'UE' is not defind ...
- 百度在线编辑器 显示html,UEditor百度编辑器中JS/html代码(script标签)被过滤的解决办法...
作为一名程序员,在文章中经常会插入各种代码,大部分代码都不会发生问题,但div和script标签是经常会被使用到的. 而在之前的文章编写过程中,插入JS代码后,第一次文章会显示正常,而之后在后台编辑器 ...
- Vue使用UEditor百度编辑器,上传图片服务配置问题,查看版本
文章目录 Vue使用UEditor百度编辑器,上传图片服务配置问题,查看版本 1.前言 2.环境配置 3.查看版本 4.配置demo 4-1.制作demo模块 4-2.配置后端服务 4-3.重启Tom ...
- 黑客攻击最短代码大揭秘!不要问,问就是5下shift键
Python实战社群 Java实战社群 长按识别下方二维码,按需求添加 扫码关注添加客服 进Python社群▲ 扫码关注添加客服 进Java社群▲ 作者丨Caesar 来源丨手机电脑双黑客(heike ...
- vue el-checkbox按下shift键实现批量选择数据
目录 1.先看下效果 2.代码分析 1.添加html代码,先将列表写出来 2.初始化数据:给原数据添加index属性 3.设置一个flag记录是否按下了shift键,通过监听键盘按下和松开给flag赋 ...
- 0x8000 GetKeyState(VK_SHIFT); 判断是否有按下shift键
0x8000 & GetKeyState(VK_SHIFT); 这句是判断是否有按下shift键 为什么GetAsyncKeyState()& 首先说明,有好多程序或书上是0x8000 ...
- ueditor百度编辑器destoon的word图片转存功能
destoon6.0或destoon7.0整合ueditor百度编辑器后,需要把word中的图片直接复制到编辑器,然后点击转存按钮,即可批量保存上传,如下图 新版的百度编辑器可能要修改ueditor. ...
- Day10 -- JavaScript实现按下 Shift 键后进行多选操作的功能
实现效果 需求分析 通过shift键实现连续多选功能 按下shift的同时点击A复选框,然后在点击B复选框,A,B之间的复选框都被勾选上 或者是先点击A复选框,再按下shift键点击B复选框,A,B之 ...
- Ueditor百度编辑器中的 setContent()方法的使用
百度编辑器Ueditor所提供的setContent()方法作用是:设置或者改变编辑器里面的文字内容或html内容 函数说明:setContent(string,boolean); 参数string ...
最新文章
- SMAT,PacBio
- 判断TREE的某个节点是否是叶节点.
- Java读写二维数组到文件
- 海驾学车过程全揭秘——第九篇:科目三集训及考试
- C++ STL容器vector篇(一) vector容器存放内置和自定义数据类型并遍历
- mysql如何给text字段添加索引_MySQL 是如何利用索引的
- 案例33-用户退出功能
- Liunx 项目部署及域名访问
- opencv打开双目
- java opencv 计算滑块横移距离
- python中如何去掉重复元素
- 快速“美女找茬”(辅助工具)
- sm框架 访问局域网mysql_ssm框架搭建之sm框架整合
- React 事件处理
- 如何判断两条线段是否相交
- 吉林警方重击涉黑涉恶犯罪 一年打掉439个团伙
- 绕过 iOS 代码签名验证 ldid
- Nginx是什么,为什么使用Nginx
- ffmpeg实现g711音频和H264,H265封装mp4(整理,非原创)
- 2021/05/05 OJ每日一题 2132: Tmk吃汤饭 python
热门文章
- [转]/boot/grub/grub.conf 内容诠释
- 根据服务器ip地址查看虚拟目录,IIS虚拟目录实现与文件服务器网络驱动器映射共享...
- 找不到_笔记本找不到无线网络怎么办
- 机器人庄园作文_小学生的科幻作文
- electron 样式不加载_electron-vue,启动之后没了样式和图片是什么原因呢,请大佬帮忙康康...
- oracle批处理参数调用,bat调用jar包并传入多个参数
- 网络好不好,ping一下就知道
- Serverless 工程实践 | 零基础上手 Knative 应用
- Dragonfly 成为 CNCF 孵化项目,我们与基金会首位华人 TOC 聊了聊
- cpu飙升 死循环_java排查一个线上死循环cpu暴涨的过程分析