Vue 实现对quill-editor组件中的工具栏添加title


Posted in Javascript onAugust 03, 2020

前言:quill-editor组件中的工具栏都是英文,而且最难受的时没有title提示,要怎样给他添加title,并且是中文的title提示呢?

一、创建一个quill-title.js文件

①、在其中插入以下代码

const titleConfig = {
 'ql-bold':'加粗',
 'ql-color':'颜色',
 'ql-font':'字体',
 'ql-code':'插入代码',
 'ql-italic':'斜体',
 'ql-link':'添加链接',
 'ql-background':'背景颜色',
 'ql-size':'字体大小',
 'ql-strike':'删除线',
 'ql-script':'上标/下标',
 'ql-underline':'下划线',
 'ql-blockquote':'引用',
 'ql-header':'标题',
 'ql-indent':'缩进',
 'ql-list':'列表',
 'ql-align':'文本对齐',
 'ql-direction':'文本方向',
 'ql-code-block':'代码块',
 'ql-formula':'公式',
 'ql-image':'图片',
 'ql-video':'视频',
 'ql-clean':'清除字体样式'
};
 
export function addQuillTitle(){
 const oToolBar = document.querySelector('.ql-toolbar'),
    aButton = oToolBar.querySelectorAll('button'),
    aSelect = oToolBar.querySelectorAll('select');
 aButton.forEach(function(item){
  if(item.className === 'ql-script'){
   item.value === 'sub' ? item.title = '下标': item.title = '上标';
  }else if(item.className === 'ql-indent'){
   item.value === '+1' ? item.title ='向右缩进': item.title ='向左缩进';
  }else{
   item.title = titleConfig[item.classList[0]];
  }
 });
 aSelect.forEach(function(item){
  item.parentNode.title = titleConfig[item.classList[0]];
 });
}

②、在页面中应用

<template>
 <quill-editor v-model="content" >
 </quill-editor>
</template>
 
<script>
 
 import { quillEditor } from 'vue-quill-editor'
 import { addQuillTitle } from './quill-title.js'
 
 export default {
  components: {
   quillEditor
  },
  mounted(){
   addQuillTitle();
  },
  data() {
   return {
    content: '<h2>freddy</h2>',
   }
  }
 }
</script>

③、运行结果

Vue 实现对quill-editor组件中的工具栏添加title

像这样鼠标移入的时候就会显示title了。

补充知识:自定义设置vue-quill-editor toolbar的title属性

直接看代码吧~

const titleConfig = {
 'ql-bold':'加粗',
 'ql-color':'字体颜色',
 'ql-font':'字体',
 'ql-code':'插入代码',
 'ql-italic':'斜体',
 'ql-link':'添加链接',
 'ql-background':'背景颜色',
 'ql-size':'字体大小',
 'ql-strike':'删除线',
 'ql-script':'上标/下标',
 'ql-underline':'下划线',
 'ql-blockquote':'引用',
 'ql-header':'标题',
 'ql-indent':'缩进',
 'ql-list':'列表',
 'ql-align':'文本对齐',
 'ql-direction':'文本方向',
 'ql-code-block':'代码块',
 'ql-formula':'公式',
 'ql-image':'图片',
 'ql-video':'视频',
 'ql-clean':'清除字体样式'
};

export function addQuillTitle(){
 const oToolBar = document.querySelector('.ql-toolbar'),
    aButton = oToolBar.querySelectorAll('button'),
    aSelect = oToolBar.querySelectorAll('select'),
    aSpan= oToolBar.querySelectorAll('span');
 aButton.forEach((item)=>{
  if(item.className === 'ql-script'){
   item.value === 'sub' ? item.title = '下标': item.title = '上标';
  }else if(item.className === 'ql-indent'){
   item.value === '+1' ? item.title ='向右缩进': item.title ='向左缩进';
  }else if(item.className === 'ql-list'){
	 item.value==='ordered' ? item.title='有序列表' : item.title='无序列表'
	}else if(item.className === 'ql-header'){
	 item.value === '1' ? item.title = '标题H1': item.title = '标题H2';
	}else{
   item.title = titleConfig[item.classList[0]];
  }
 });
 aSelect.forEach((item)=>{
  if(item.className!='ql-color'&&item.className!='ql-background'){
   item.parentNode.title = titleConfig[item.classList[0]];
  }
 });
 aSpan.forEach((item)=>{
  if(item.classList[0]==='ql-color'){
   item.title = titleConfig[item.classList[0]];
  }else if(item.classList[0]==='ql-background'){
   item.title = titleConfig[item.classList[0]];
  }
 });
}

//how to use
//import { addQuillTitle } from './set-quill-title.js'
//addQuillTitle();   --use in mouted
//自定义 set title

以上这篇Vue 实现对quill-editor组件中的工具栏添加title就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
通过js脚本复制网页上的一个表格的不错实现方法
Dec 29 Javascript
提升PHP安全:8个必须修改的PHP默认配置
Nov 17 Javascript
jQuery实现当前页面标签高亮显示的方法
Mar 10 Javascript
AngularJS Ajax详解及示例代码
Aug 17 Javascript
js实现砖头在页面拖拉效果
Nov 20 Javascript
iscroll动态加载数据完美解决方法
Jul 18 Javascript
jquery.uploadView 实现图片预览上传功能
Aug 10 jQuery
微信小程序实现城市列表选择
Jun 05 Javascript
通过jquery.cookie.js实现记住用户名、密码登录功能
Jun 20 jQuery
解决一个微信号同时支持多个环境网页授权问题
Aug 07 Javascript
Vue中用JSON实现刷新界面不影响倒计时
Oct 26 Javascript
vue data有值,但是页面{{}} 取不到值的解决
Nov 09 Javascript
简单了解three.js 着色器材质
Aug 03 #Javascript
Element InputNumber 计数器的实现示例
Aug 03 #Javascript
解决Vue的文本编辑器 vue-quill-editor 小图标样式排布错乱问题
Aug 03 #Javascript
Vue 根据条件判断van-tab的显示方式
Aug 03 #Javascript
在vue中使用el-tab-pane v-show/v-if无效的解决
Aug 03 #Javascript
Vue解决echart在element的tab切换时显示不正确问题
Aug 03 #Javascript
js实现点击上传图片并设为模糊背景
Aug 02 #Javascript
You might like
php 无限级 SelectTree 类
2009/05/19 PHP
PHP轻量级数据库操作类Medoo增加、删除、修改、查询例子
2014/07/04 PHP
PHP日期函数date格式化UNIX时间的方法
2015/03/19 PHP
Zend Framework入门教程之Zend_Config组件用法详解
2016/12/09 PHP
兼容IE与firefox火狐的回车事件(js与jquery)
2010/10/20 Javascript
Json对象替换字符串占位符实现代码
2010/11/17 Javascript
js检测判断日期大于多少天的方法
2015/05/04 Javascript
Javascript实现div的toggle效果实例分析
2015/06/09 Javascript
jQuery实现的图文高亮滚动切换特效实例
2015/08/10 Javascript
js简单实现Select互换数据的方法
2015/08/17 Javascript
jquery分页插件jquery.pagination.js实现无刷新分页
2016/04/01 Javascript
详解vue-router 2.0 常用基础知识点之导航钩子
2017/05/10 Javascript
微信小程序实现购物车代码实例详解
2019/08/29 Javascript
ES6的异步操作之promise用法和async函数的具体使用
2019/12/06 Javascript
JavaScript常用进制转换及位运算实例解析
2020/10/14 Javascript
vue组件中传值EventBus的使用及注意事项说明
2020/11/16 Javascript
[54:27]TNC vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
[01:20]PWL S2开团时刻第三期——团战可以输 蝙蝠必须死
2020/11/26 DOTA
Python实现的堆排序算法原理与用法实例分析
2017/11/22 Python
Python 利用切片从列表中取出一部分使用的方法
2019/02/01 Python
Tensorflow模型实现预测或识别单张图片
2019/07/19 Python
Python 使用多属性来进行排序
2019/09/01 Python
利用matplotlib实现根据实时数据动态更新图形
2019/12/13 Python
Ubuntu16.04安装python3.6.5步骤详解
2020/01/10 Python
Django 博客实现简单的全文搜索的示例代码
2020/02/17 Python
python 5个顶级异步框架推荐
2020/09/09 Python
html5 canvas合成海报所遇问题及解决方案总结
2017/08/03 HTML / CSS
网络安全方面的面试题
2015/11/04 面试题
网络信息管理员岗位职责
2014/01/05 职场文书
美容院经理岗位职责
2014/04/03 职场文书
缓刑人员思想汇报500字
2014/09/12 职场文书
小学教师学习党的群众路线教育实践活动心得体会
2014/10/31 职场文书
2014年学校食堂工作总结
2014/11/25 职场文书
2014年档案管理员工作总结
2014/12/01 职场文书
2015初中团委工作总结
2015/07/28 职场文书
如何将JavaScript将数组转为树形结构
2021/06/02 Javascript