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 版
Mar 24 Javascript
js event事件的传递与冒泡处理
Dec 06 Javascript
在html页面上拖放移动标签
Jan 08 Javascript
JavaScript获取onclick、onchange等事件值的代码
Jul 22 Javascript
基于jquery插件实现常见的幻灯片效果
Nov 01 Javascript
php+js实现倒计时功能
Jun 02 Javascript
javascript与Python快速排序实例对比
Aug 10 Javascript
纯javascript实现自动发送邮件
Oct 21 Javascript
微信小程序 参数传递详解
Oct 24 Javascript
详解微信小程序与内嵌网页交互实现支付功能
Oct 22 Javascript
详解Vue CLI 3.0脚手架如何mock数据
Nov 23 Javascript
JS实现刷新网页后之前浏览位置保持不变示例详解
Aug 14 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
使用 php4 加速 web 传输
2006/10/09 PHP
php微信支付之公众号支付功能
2018/05/30 PHP
表单JS弹出填写提示效果代码
2011/04/16 Javascript
如何使用json在前后台进行数据传输实例介绍
2013/04/11 Javascript
javascript实现window.print()去除页眉页脚
2014/12/30 Javascript
jquery ui resize 中border-box的bug修正
2015/04/26 Javascript
JavaScript中的原型prototype属性使用详解
2015/06/05 Javascript
js一维数组、多维数组和对象的混合使用方法
2016/04/03 Javascript
jquery 无限极下拉菜单的简单实例(精简浓缩版)
2016/05/31 Javascript
webix+springmvc session超时跳转登录页面
2016/10/30 Javascript
AngularJS实现DOM元素的显示与隐藏功能
2016/11/22 Javascript
js求数组中全部数字可拼接出的最大整数示例代码
2017/08/25 Javascript
在Angular中使用JWT认证方法示例
2018/09/10 Javascript
微信小程序 云开发模糊查询实现解析
2019/09/02 Javascript
OpenLayers加载缩放控件使用方法详解
2020/09/25 Javascript
[07:09]DOTA2-DPC中国联赛 正赛 Ehome vs Elephant 选手采访
2021/03/11 DOTA
python如何通过protobuf实现rpc
2016/03/06 Python
python 读写txt文件 json文件的实现方法
2016/10/22 Python
Python cookbook(字符串与文本)针对任意多的分隔符拆分字符串操作示例
2018/04/19 Python
python 实现在txt指定行追加文本的方法
2018/04/29 Python
Python统计python文件中代码,注释及空白对应的行数示例【测试可用】
2018/07/25 Python
解决Django删除migrations文件夹中的文件后出现的异常问题
2019/08/31 Python
简单瞅瞅Python vars()内置函数的实现
2019/09/27 Python
python deque模块简单使用代码实例
2020/03/12 Python
浅析Python 序列化与反序列化
2020/08/05 Python
Canvas实现放大镜效果完整案例分析(附代码)
2020/11/26 HTML / CSS
英国知名的皮手套品牌:Dents
2016/11/13 全球购物
香港时尚女装购物网站:ZAFUL
2017/07/19 全球购物
Shopee印度尼西亚:东南亚与台湾市场最大电商平台
2018/06/17 全球购物
匡威意大利官方商店 :Converse意大利
2018/11/27 全球购物
软件测试题目
2013/02/27 面试题
库房管理员岗位职责
2014/03/09 职场文书
运动会口号16字
2014/06/07 职场文书
领导班子四风对照检查材料
2014/09/23 职场文书
幼儿园感恩节活动方案
2014/10/06 职场文书
简爱电影观后感
2015/06/10 职场文书