首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >execCommand理据中心

execCommand理据中心
EN

Stack Overflow用户
提问于 2010-10-24 04:44:56
回答 2查看 2.4K关注 0票数 2

如果我试图在火狐页面上execCommand("justifycenter"...一个段落,它就不起作用了;它给了我这个疯狂的错误:

未明的例外:[例外.“组件返回的失败代码: 0x80004005 (NS_ERROR_FAILURE) nsIDOMNSHTMLDocument.execCommand”ns结果:"0x80004005 (NS_ERROR_FAILURE)“位置:"JS框架::editor.php?id=new ::onclick :1行”数据: no]

我已经知道原因了,这是因为我的body标记没有内容可编辑,这是很烦人的,因为其他浏览器不需要这个。

现在,我的问题是,我不希望整个页面是可编辑的。我正在编写一个WYSIWYG页面构建器,如果将整个编辑器放入一个iframe中,这是一个很大的妥协。还有人知道其他的选择吗?这整个execCommand的东西对我来说是新的,启用它对身体,但禁用它为其他一切似乎是一个非常糟糕的黑客。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-10-24 08:37:08

类似于:

代码语言:javascript
复制
function myExecCommand(aCommandName, aShowDefaultUI, aValueArgument) {
   document.contentEditable = true;
   document.execCommand(aCommandName, aShowDefaultUI, aValueArgument);
   document.contentEditable = false;
}

应该可以工作,而且根据MDC,您可以在所讨论的元素上设置contentEditable,而不是在主体上设置contentEditable,并且它应该可以工作。

注:我认为在FireFox中有3个参数是强制性的。

票数 2
EN

Stack Overflow用户

发布于 2011-05-31 14:53:54

我最近也发现了这一点,我相信这是火狐(bug.cgi?id=442186)中的一个bug。这个解决方案包含在接下来的讨论中,尽管有些难看。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4007238

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档