gpt4 book ai didi

javascript - ckeditor 将选择转换为指定的标签

转载 作者:行者123 更新时间:2023-11-30 05:54:53 24 4
gpt4 key购买 nike

我刚刚按照引用在ckeditor/plugins中添加了一个文件夹并将其命名为button-pre

这是来源

(function(){
var a={
exec:function(editor){
var format={element:'pre'};
var style=new CKEDITOR.style(format);
style.apply(editor.document);
}
},
b='button-pre';
CKEDITOR.plugins.add(b, {
init:function(editor){
editor.addCommand(b, a);
editor.ui.addButton('button-pre', {
label:'Button PRE',
icon:this.path+'button-pre.png',
command:b
});
}
});
})();

这是我的问题

当我滚动鼠标选择几行并想将其转换为标签 PRE 时,它总是转换所有文档。

我意识到它可能是由 style.apply(editor.document) 东西设置的。

所以我尝试了一些方法来解决这个问题(例如 style.apply(editor.getSelection().getNative())

但我找不到任何解决方案。它根本不起作用,请帮忙!

最佳答案

这并不像看起来那么容易。请看the source code of the div plugin将选择包装成 DIV元素。这可能对您有所启发。但是,请注意,您需要大量的 DOM 黑客技巧才能避免一些病态情况,例如标签重叠:

<p>First [paragraph</p><p>Second]^ paragraph</p>

上面不能转换成这样:

<p>First <pre>paragraph</p><p>Second</pre> paragraph</p>

因为这是一个错误的标记。

无论如何,祝你好运!

关于javascript - ckeditor 将选择转换为指定的标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12558971/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com