html - 如何使用 `execCommand("insertoredlist")`?

标签 html wysiwyg contenteditable execcommand

我看到一些所见即所得的编辑器使用 execCommand 将 DOM 插入 div,例如:execCommand("insertorderedlist")

我试着写了一个demo,但是运行不了。代码很简单:

document.execCommand("insertorderedlist");

但是当我点击“运行 JS”按钮时,它没有插入任何东西。我错过了什么吗?

这是一个现场演示:http://jsbin.com/olalaf/1/edit

最佳答案

这是我修复的演示:http://jsbin.com/olalaf/2/edit

您需要一个带有 contenteditable 的元素属性设置为 true。此属性启用在此元素内部进行编辑。所有浏览器都支持它,但以一种非常糟糕、错误的方式。

第二部分以正确的方式执行 document.execCommand,这样选择就不会丢失。这就是我添加自己的按钮的原因。我认为 Run with JS 不起作用,因为它在不同的框架中,因此在执行命令之前选择会丢失。

关于html - 如何使用 `execCommand("insertoredlist")`?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17752320/

相关文章:

javascript - HTML 5 使用 javascript 切换 contenteditable 属性

html - 什么 CSS 可以防止这些嵌套列表项重叠?

在编辑环境中进行 HTML 创作

javascript - Basecamp 的 Trix WYSIWYG 编辑器 gem 不在 Rails 4 应用程序中保存文件附件

php - 什么基于浏览器的所见即所得编辑器尊重我的 HTML 格式?

javascript - 在更改 contentEditable div 的 css 字体大小后直观地更新插入符大小

html - 如何使用 Bootstrap 表单控件类自动调整内容大小来制作 contenteditable div?

javascript - view.zoom 对于 paper.js 中的大 Canvas 尺寸渲染速度很慢

javascript - 将 Bootstrap 4 Carousel 与动画文本同步(morphext)

css - 为什么搜索引擎在其主页中使用嵌入式样式表而不是外部样式表?