Javascript 设计模式和自定义操作?
因此,我的最新项目需要使用designMode(或创建富文本编辑器的类似方法),但我在使用默认命令时遇到了困难。我更愿意在选择器的位置插入我自己的HTML。例如,我希望插入的图像具有align属性(当然,使用正确的CSS)、插入HTML5视频标记等。是否有“首选”的方法(使用Javascript或jQuery)Javascript 设计模式和自定义操作?,javascript,jquery,contenteditable,designmode,Javascript,Jquery,Contenteditable,Designmode,因此,我的最新项目需要使用designMode(或创建富文本编辑器的类似方法),但我在使用默认命令时遇到了困难。我更愿意在选择器的位置插入我自己的HTML。例如,我希望插入的图像具有align属性(当然,使用正确的CSS)、插入HTML5视频标记等。是否有“首选”的方法(使用Javascript或jQuery) 谢谢 您不必为此使用document.execCommand();它相对来说比较简单,而且更灵活 我已经为在当前插入符号位置插入任意HTML的类似问题提供了答案:。我编辑了代码,以便用d
谢谢 您不必为此使用
document.execCommand()
;它相对来说比较简单,而且更灵活
我已经为在当前插入符号位置插入任意HTML的类似问题提供了答案:。我编辑了代码,以便用doc变量替换“window”。var doc=document.getElementById(editorid).contentWindow;提供了editorid值。该代码在firefox和chrome中运行良好,但在IE9中却不起作用(我在这里只包含了js:。我使用的是designMode而不是contenteditable。@tundoopani:您需要同时使用iframe的窗口和文档对象。我更新了您的代码:非常感谢!它现在可以在IE中使用,但HTML总是添加在字段的开头。:/@tundoopani:问题可能是IE中的选择/caret会在您的按钮的
单击事件被触发时被销毁。您可以使用鼠标向下事件来解决此问题,或者(更好)使用不可选择=“on”使按钮不可选择
在IE中。似乎对div元素使用click事件也会导致在触发click事件时选择/插入符号被破坏。这在所有浏览器中都会发生。你知道为什么对div元素而不是按钮会发生这种情况吗?同时,我将尝试使用mousedown事件。谢谢!