我看到一些wysiwyg编辑器使用execCommand
将DOM插入div,例如:execCommand("insertorderedlist")
。
我试着写一个演示,但它无法运行。代码很简单:
document.execCommand("insertorderedlist");
但是当我点击“运行JS”按钮时,它不会插入任何内容。我错过了什么吗?
这是一个现场演示:http://jsbin.com/olalaf/1/edit
答案 0 :(得分:2)
以下是我修复的演示:http://jsbin.com/olalaf/2/edit
您需要将contenteditable
属性设置为true
的元素。此属性允许在此元素内进行编辑。所有的浏览器都支持它,但是以一种非常糟糕的错误方式支持它。
第二部分正在以适当的方式执行document.execCommand
,因此选择不会丢失。这就是我添加自己的按钮的原因。我认为Run with JS
不起作用,因为它位于不同的帧中,因此在执行命令之前选择会丢失。