找回密码
 立即注册
查看: 389|回复: 2

[求助] 帝国cms编辑器的DIV样式增

[复制链接]

3

主题

4

回帖

43

积分

新手上路

积分
43
求知是本性 发表于 2024-8-13 09:49:36 | 显示全部楼层 |阅读模式
文章有固定的DIV样式,每次发布文章的时候,都需要添加
我只会在DIV样式容器里增加了,但每次都需要点开,再选择
有没有什么办法,让在编辑器上直接显示按钮,点击一下,就可以跟现有的容器一样,添加上样式。





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

2

主题

3

回帖

41

积分

新手上路

积分
41
格式化 发表于 2024-8-13 09:50:04 | 显示全部楼层
  1. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">CKEDITOR.plugins.add('divclass', {</span>
  2. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">    init: function(editor) {</span>
  3. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">        // 添加编辑器命令</span>
  4. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">        editor.addCommand('insertDivClass', {</span>
  5. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">            exec: function(editor) {</span>
  6. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">                var selection = editor.getSelection();</span>
  7. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">                var ranges = selection.getRanges();</span>
  8. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">                var content = '';</span>

  9. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">                // 这里只是示例,&#8204;实际你可能需要遍历所有range并处理</span>
  10. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">                if (ranges.length > 0) {</span>
  11. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">                    var range = ranges[0];</span>
  12. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">                    var clonedElement = range.cloneContents();</span>
  13. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">                    var div = new CKEDITOR.dom.element('div', editor.document);</span>
  14. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">                    div.addClass('styelxx');</span>
  15. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">                    div.append(clonedElement);</span>

  16. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">                    // 注意:&#8204;这里的处理很简化,&#8204;实际中你可能需要更精细地处理内容</span>
  17. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">                    // 比如处理嵌套、&#8204;样式、&#8204;位置等</span>

  18. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">                    range.deleteContents();</span>
  19. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">                    range.insertNode(div);</span>
  20. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">                    selection.selectRanges([range]);</span>
  21. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">                }</span>
  22. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">            }</span>
  23. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">        });</span>

  24. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">        // 添加工具栏按钮</span>
  25. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">        editor.ui.addButton('divclass', {</span>
  26. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">            label: 'Add Div with Class',</span>
  27. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">            command: 'insertDivClass',</span>
  28. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">            //toolbar: 'insert', // 或者你希望放置的其他工具栏组</span>
  29. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">            icon: this.path + 'images/insertpage.gif'</span>
  30. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">        });</span>
  31. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">    }</span>
  32. <span style="color: rgb(0, 0, 0); font-family: 宋体; font-size: 14px;">});</span>
复制代码




算是弄了一个,但会出现错误。
就算是全选了,但添加了DIV后,依然会少了最开始的一个P标签和最后一个结尾P标签。。
回复 支持 反对

使用道具 举报

2

主题

3

回帖

41

积分

新手上路

积分
41
格式化 发表于 2024-8-13 09:50:15 | 显示全部楼层
参考插入回车那个项
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|IDCeve

GMT+8, 2024-9-17 03:51 , Processed in 0.043291 second(s), 7 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表