移除CKEditor中的HTML元素
Removing HTML element in CKEditor
我正在创建一个CKEditor插件。作为这个插件的一部分,我希望能够从编辑器的内容中删除一些任意的HTML元素。例如一个<img id="remove-me" />
。
我知道我可以得到内容(var contents = e.getData();
),并将内容替换为其他内容(e.setData(newContents);
)。我知道我可以做一个字符串/正则表达式替换,但这很棘手,因为用户可能会在HTML中添加一些任意属性或空格。
我希望能够使用像jQuery这样的东西来查找和删除元素(如$("#remove-me").remove()
,但不知道如何做到这一点。
有什么建议吗?
CKEditor的内容保存在您可以通过editor.editable()
访问的元素中。然后,您可以使用dom.element.find()
或dom.element.findOne()
等方法,最后您可以使用dom.element.remove()
删除元素。你也可以访问本地DOM节点和使用jQuery。
使用CKEditor API的例子:
editor.editable().findOne( 'img' ).remove();
使用jQuery: jQuery( editor.editable().$ ).find( 'img' ).remove();
你可以这样做
CKEDITOR.instances.editor_obj.document.getById(id).remove();
或
editor_obj.document.getById(id).remove();
相关文章:
- 我应该怎么做才能避免在网页上移动元素(html、css、jQuery)
- 更改元素HTML,但忽略最后一个子项
- 增加在选择元素HTML中搜索的时间
- Jquery无法获取元素html
- 从所选元素 html 上方的元素获取属性值
- 在 JS 的单选按钮元素 (HTML) 中使用 title 属性
- 如何在页面上播放每个音频元素(HTML,JQuery,Javascript)
- 我需要一种新的方法来检测元素 HTML 是否有更改
- 获取父元素 html 以及子内容
- AngularJS指令:如何在ng-repeat中动态更改元素html
- html 属性中的引号被标记为 ”来自元素.html()的结果
- 在指令's链接中替换angular元素html
- 如果元素有子元素html元素
- 如何下推表格中的元素- HTML
- 如何在纯javascript中使用变量插入数组值,如元素HTML
- jQuery textilate .js -如何“重置”元素HTML并重新启动动画
- 将元素HTML附加到新附加的textarea中
- 在添加类的情况下,CSS 3的过渡是否不能与模板元素(HTML 5)一起工作?
- jQuery没有更新DOM元素HTML
- 在jQuery中更快地替换元素HTML