储存quill与php,Quill自定义上传图片

Quill-Demo

body {

padding: 10px 30px;

}

#editor {

min-height: 180px;

}

Quill自定义上传图片

/* 编辑器操作条选项 */

var toolbarOptions = [

['bold', 'italic', 'underline', 'strike'], //开关按钮

['blockquote', 'code-block'],

[{'header': 1}, {'header': 2}], //自定义按钮值

[{'list': 'ordered'}, {'list': 'bullet'}],

[{'script': 'sub'}, {'script': 'super'}], // 上标/下标

[{'indent': '-1'}, {'indent': '+1'}], // 减少缩进/缩进

[{'direction': 'rtl'}], // 文本方向

[{'size': ['small', false, 'large', 'huge']}], // 自定义下拉

[{'header': [1, 2, 3, 4, 5, 6, false]}],

[{'color': []}, {'background': []}], //使用主题的默认下拉

[{'font': []}],

[{'align': []}],

['clean'], //移除格式化

['image'],

['video'],

['formula'] //需要加载cdnjs.cloudflare.com/ajax/libs/KaTeX/0.7.1/katex.min.js

];

/* 实例化编辑器 */

var quill = new Quill('#editor', {

/*debug: 'info',*/

modules: {

//formula: true, //公式;需要加载cdnjs.cloudflare.com/ajax/libs/KaTeX/0.7.1/katex.min.js

//syntax: true, //高亮;需要加载cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/highlight.min.js

/*toolbar: {

container:"#editor_header"

}*/ // 或者 toolbar :'#editor_header'

toolbar:toolbarOptions //指定编辑器操作条

},

theme: 'snow', //主题,有两种,snow和bubble

placeholder:'请输入',

readOnly: false

});

$('input[name="imgData"]').change(function(){

const range = quill.getSelection();

if (range) {

quill.insertEmbed(range.index, 'image',""+'http://m.dzrjia.cn/public/uploads/images/00358.jpg'); //将上传好的图片,插入到富文本的range.index(当前光标处)

}

})

//修改样式

var Align = Quill.import('attributors/style/align');

Align.whitelist = ['right', 'center', 'justify'];

Quill.register(Align, true);

/* 传入布尔值,控制编辑器是否可用 */

quill.enable();

//quill.blur(); //失去焦点

//quill.focus(); //获得焦点

/* 事件的绑定;注意:text-change这个获取值放这的话是编辑器内容发生改变的时候才能获取到值,如果想每次提交都有值,要放到提交那 */

quill.on('text-change', function(delta, oldDelta, source) {

// console.log(delta); //当前输入的

// console.log(oldDelta); //上一次输入的

// console.log(source);

//res = quill.container.firstChild.innerHTML; //获取当前富文本编辑器实例的内容(带html标签)

//console.log(res);

});

/* 自定义按钮 */

var myBtn = document.querySelector("#my_button");

myBtn.addEventListener("click",function(){

//console.log('my-btn')

});

//【自定义上传图片1】通过addHander来监听image事件

let toolbar = quill.getModule('toolbar');

toolbar.addHandler('image', () => {

document.getElementById('imgData').click();

});

//【自定义上传图片2】发送ajax处理好图片

function updateImg(file){

alert()

var formData = new FormData();

formData.append('avatar', file); //追加的自定义节点,第一个参数:php用$_FILES接收时的key;第2个参数:当前图片

console.log(formData.get("avatar")); //打印当前图片的信息

$.ajax({ //发送ajax

url:'index.php', //url

type:'post', //以post发送

data:formData, //要发送的数据。后端接收$_POST['user']

dataType:'json', //返回的数据类型

cache:false,

traditional: true,

contentType: false,

processData: false,

success:function(res){

console.log(res);

//图片上传成功之后的回调

const range = quill.getSelection();

if (range) {

quill.insertEmbed(range.index, 'image',""+res); //将上传好的图片,插入到富文本的range.index(当前光标处)

}

}

});

};

//form表单的提交

function submitData(){

res = quill.container.firstChild.innerHTML; //获取当前富文本编辑器实例的内容(带html标签)

console.log(res); //获取当前富文本编辑器实例的内容(带html标签)

$("#richText").val(res);

};

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值