javascript - TinyMCE 重写图像 src 上的查询字符串
问题描述
我正在使用 Glide 包(https://glide.thephpleague.com)来根据查询字符串参数操作图像。可以说我有/some/large/image.jpg
,它可以像这样轻松缩小/some/large/image.jpg?w=300&h=200
我希望在 TinyMCE 中自动应用这些查询参数(简化示例)
tinymce.init({
...
convert_urls: false,
setup: (editor) => {
editor.on('ObjectResized', (e) => {
let src = e.target.src.replace(/\?.+/, '');
let resizedSrc = `${src}?w=${e.width}&h=${e.height}`;
e.target.src = resizedSrc;
e.target.alt = resizedSrc; // to prove it works
console.log(e.target);
});
}
})
但 TinyMCE 将查询字符串部分修剪为src
. 记录的控制台e
仍然具有src
并按alt
我的意愿设置,但如果我显示 TinyMCE 生成的源src
缺少查询字符串,则alt
保持不变。
https://codepen.io/vitnasinec/pen/YzyEBZQ
知道如何防止 TinyMCE (5.2.2) 重写我的src
吗?
解决方案
editor.dom.setAttrib
在 TinyMCE DOMUtils API 中使用:
editor.dom.setAttrib(e.target, 'src', resizedSrc);
editor.dom.setAttrib(e.target, 'alt', resizedSrc);
有关工作示例,请参阅此TinyMCE Fiddle 。
推荐阅读
- javascript - 将 PHP 数组传递给 JS - PHP Laravel 5.8
- sql - SQL 文本操作
- sentry - python面包屑日志记录中的哨兵不起作用
- ln - 如何更正此错误以使终端接受我的输入?
- python - 在python中运行代码后如何输入数字?
- python - 如何使用 zip 撤消转置?
- php - 我在 bot 中添加了 Telegram bot API 方法 answerCallbackQuery 但现在它不显示警报该怎么办?
- javascript - 检索数据时处理 if/else 语句的最佳方式
- spring-boot - 批量插入 jpa 存储库
- c# - 将当前表单实例传递给另一个类