Skip to content

Commit

Permalink
fix:foldtext
Browse files Browse the repository at this point in the history
  • Loading branch information
Kaviilee committed Jun 15, 2024
1 parent 78195da commit b24c85d
Show file tree
Hide file tree
Showing 2 changed files with 51 additions and 5 deletions.
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@deepberry/tinymce",
"version": "0.2.1",
"version": "0.2.2",
"description": "基于tinymce 5.2.2扩展DeepBerry专用",
"main": "tinymce.js",
"devDependencies": {
Expand Down
54 changes: 50 additions & 4 deletions plugins/foldtext/plugin.min.js
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
tinymce.PluginManager.add("foldtext", function (editor, url) {

var insertFoldText = function (){
var insertFoldText = function () {
var selected_text = editor.selection.getContent();
let _title = '<pre class="e-summary">折叠头文本</pre>';
let _body = `<pre class="e-details">被折叠区域文本</pre><br>${selected_text}`;
let _title = '<div class="e-summary">折叠头文本</div>';
let _body = `<div class="e-details">被折叠区域文本</div><br>${selected_text}`;
editor.insertContent(_title + _body);
}
}

// 注册一个工具栏按钮名称
editor.ui.registry.addButton("foldtext", {
Expand All @@ -24,6 +24,52 @@ tinymce.PluginManager.add("foldtext", function (editor, url) {
// },
// });

// 监听keydown事件
editor.on('keydown', function (e) {
if (e.key === 'Enter') {
var node = editor.selection.getNode();
if (node && node.closest('.e-details')) {
// 阻止在e-details内的回车行为
e.preventDefault();

// 插入p标签
editor.insertContent('<p></p>');

// 获取当前选区
var range = editor.selection.getRng();
var newP = range.startContainer.nextSibling;

// 确保newP存在且是<p>标签
if (newP && newP.nodeName === 'P') {
range.setStart(newP, 0);
range.setEnd(newP, 0);
editor.selection.setRng(range);
}

// 强制更新内容
editor.nodeChanged();
}

// // 获取当前选区
// var range = editor.selection.getRng();
// var br = document.createElement('br');

// // 插入br标签并移动光标
// range.insertNode(br);

// // 强制更新内容
// editor.nodeChanged();

// // 创建新的选区,将光标放到br标签后面
// range.setStartAfter(br);
// range.setEndAfter(br);

// // 更新选区
// editor.selection.setRng(range);

}
});

return {
getMetadata: function () {
return {
Expand Down

0 comments on commit b24c85d

Please sign in to comment.