在 TinyMCE 5 编辑器中添加 "rel"-attribute 到 img 标签
Add "rel"-attribute to img tag in TinyMCE 5 editor
我搜索了一个解决方案,可以自动为每个添加到 TinyMCE 5 编辑器中的图像添加一个“rel-attribute”。所以 html 标签应该是这样的:
<img class="imageborder" src="https://xy.jpg" rel="lightbox" width="500" height="333" />
我已经试过了,但是没有添加。这是 JSFiddle.
tinyMCE.init({
selector: '#myTextarea',
plugins: 'code image autolink link lists charmap print preview textcolor',
toolbar: 'code image link | undo redo | insert | ',
menubar: false,
min_height: 300,
image_class_list: [
{ title: 'imageborder', value: 'imageborder' },
],
image_rel_list: [
{ title: 'lightbox', value: 'lightbox' },
],
setup: function (ed) {
ed.on("keyup", function () {
$('#preview').html(tinymce.activeEditor.getContent());
});
}
});
您可以将 rel 添加到 link 而不是像这样的图像:
tinyMCE.init({
selector: '#myTextarea',
plugins: 'code image autolink link lists charmap print preview textcolor',
toolbar: 'code image link | undo redo | insert | ',
menubar: false,
min_height: 300,
image_class_list: [
{ title: 'imageborder', value: 'imageborder' },
],
rel_list: [
{title: 'lightbox', value: 'lightbox'},
{title: 'Other rel', value: 'otherrel'}
],
setup: function (ed) {
ed.on("keyup", function () {
$('#preview').html(tinymce.activeEditor.getContent());
});
}
});
它在此处的文档中:https://www.tiny.cloud/docs/plugins/opensource/link/#exampleusingrel_list
然后使用 a rel 作为灯箱 link,而不是图像。
您可以在 NodeChange
事件中获取 img
元素。
文档: https://www.tiny.cloud/docs-4x/advanced/events/#nodechange
Jsfiddle: https://jsfiddle.net/aswinkumar863/L48jdqzs/
tinyMCE.init({
...
setup: function(ed) {
ed.on("keyup", function() {
$('#preview').html(tinymce.activeEditor.getContent());
});
ed.on('NodeChange', function(e) {
e.element.parentNode.querySelectorAll('img:not([rel=lightbox])').forEach(img => {
img.setAttribute('rel', 'lightbox');
});
});
}
});
我搜索了一个解决方案,可以自动为每个添加到 TinyMCE 5 编辑器中的图像添加一个“rel-attribute”。所以 html 标签应该是这样的:
<img class="imageborder" src="https://xy.jpg" rel="lightbox" width="500" height="333" />
我已经试过了,但是没有添加。这是 JSFiddle.
tinyMCE.init({
selector: '#myTextarea',
plugins: 'code image autolink link lists charmap print preview textcolor',
toolbar: 'code image link | undo redo | insert | ',
menubar: false,
min_height: 300,
image_class_list: [
{ title: 'imageborder', value: 'imageborder' },
],
image_rel_list: [
{ title: 'lightbox', value: 'lightbox' },
],
setup: function (ed) {
ed.on("keyup", function () {
$('#preview').html(tinymce.activeEditor.getContent());
});
}
});
您可以将 rel 添加到 link 而不是像这样的图像:
tinyMCE.init({
selector: '#myTextarea',
plugins: 'code image autolink link lists charmap print preview textcolor',
toolbar: 'code image link | undo redo | insert | ',
menubar: false,
min_height: 300,
image_class_list: [
{ title: 'imageborder', value: 'imageborder' },
],
rel_list: [
{title: 'lightbox', value: 'lightbox'},
{title: 'Other rel', value: 'otherrel'}
],
setup: function (ed) {
ed.on("keyup", function () {
$('#preview').html(tinymce.activeEditor.getContent());
});
}
});
它在此处的文档中:https://www.tiny.cloud/docs/plugins/opensource/link/#exampleusingrel_list
然后使用 a rel 作为灯箱 link,而不是图像。
您可以在 NodeChange
事件中获取 img
元素。
文档: https://www.tiny.cloud/docs-4x/advanced/events/#nodechange
Jsfiddle: https://jsfiddle.net/aswinkumar863/L48jdqzs/
tinyMCE.init({
...
setup: function(ed) {
ed.on("keyup", function() {
$('#preview').html(tinymce.activeEditor.getContent());
});
ed.on('NodeChange', function(e) {
e.element.parentNode.querySelectorAll('img:not([rel=lightbox])').forEach(img => {
img.setAttribute('rel', 'lightbox');
});
});
}
});