execCommand给出错误

时间:2012-09-18 08:29:30

标签: javascript html5 iframe execcommand

我创建了一个新的iframe,然后将其附加到主窗口文档并执行此javascript:

frame.contentDocument.execCommand('insertimage',0,'obama.jpg');

其中frame是iframe元素。不幸的是我收到了这个错误:

Error: Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMHTMLDocument.execCommand]

如何在iframe中启用execCommand()函数?有什么遗失的吗?

1 个答案:

答案 0 :(得分:2)

该文件需要可编辑。这可以通过以下任一方法完成:

frame.contentDocument.designMode = 'on';           // = 'off'; to disable`
frame.contentDocument.body.contentEditable = true; // = false; to disable`

execCommand应仅用于可编辑元素。您的错误表明情况并非如此。如果要在文档中插入新图像,只需使用:

var img = new Image();
img.src = 'http://example.com/obama.jpg';
frame.contentDocument.appendChild(img);