如何使用`execCommand(“insertorderedlist”)`?

时间:2013-07-19 17:41:49

标签: html wysiwyg contenteditable execcommand

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

我试着写一个演示,但它无法运行。代码很简单:

document.execCommand("insertorderedlist");

但是当我点击“运行JS”按钮时,它不会插入任何内容。我错过了什么吗?

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

1 个答案:

答案 0 :(得分:2)

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

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

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