Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 设计模式和自定义操作?_Javascript_Jquery_Contenteditable_Designmode - Fatal编程技术网

Javascript 设计模式和自定义操作?

Javascript 设计模式和自定义操作?,javascript,jquery,contenteditable,designmode,Javascript,Jquery,Contenteditable,Designmode,因此,我的最新项目需要使用designMode(或创建富文本编辑器的类似方法),但我在使用默认命令时遇到了困难。我更愿意在选择器的位置插入我自己的HTML。例如,我希望插入的图像具有align属性(当然,使用正确的CSS)、插入HTML5视频标记等。是否有“首选”的方法(使用Javascript或jQuery) 谢谢 您不必为此使用document.execCommand();它相对来说比较简单,而且更灵活 我已经为在当前插入符号位置插入任意HTML的类似问题提供了答案:。我编辑了代码,以便用d

因此,我的最新项目需要使用designMode(或创建富文本编辑器的类似方法),但我在使用默认命令时遇到了困难。我更愿意在选择器的位置插入我自己的HTML。例如,我希望插入的图像具有align属性(当然,使用正确的CSS)、插入HTML5视频标记等。是否有“首选”的方法(使用Javascript或jQuery)


谢谢

您不必为此使用
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事件。谢谢!