我正在写一个插件到一个旧的IE-only所见即所得编辑器,它驻留在一个旧的CMS。我已经创建了一个插件,可以打开一个弹出窗口,用户可以在其中输入youtube剪辑的url。
然后,弹出窗口创建嵌入的当前<object..><param..>标记并使用Internet Explorers pasteHTML函数;
var range = plugin.editorDocument.selection.createRange();
var embedHtml = OpenDialog(dialogUrl, null, 400, 200);
if (!embedHtml)
我用pasteHTML方法替换选定的文本(将HTML文本粘贴到给定的文本范围中,替换该范围中以前的任何文本和HTML元素。)在internet explorer中。
var ran = Editor.selection.createRange();
ran.pasteHTML('<span style="font-size:20px;">example</span>');
替换文本后,所选内容消失。如何再次突出显示上一次选择(文本)?谢谢
说明我想在iframe元素内的body元素中插入一些超文本标记语言。我使用以下代码:
var selection = iframe.contentWindow.document.selection;
var range = selection.createRange();
range.collapse(false);
range.pasteHTML('<h1>hello</h1>');
我怀疑新创建的h1元素应该出现在iframe内部,但它被插入到body元素的顶层,即。iframe的容器,而不是iframe本身。
此问题似乎仅在IE中出现。
我有以下javascript,我正在尝试使用它将图像插入到我的内容中:
var imgHtml = '<IMG SRC="' + returnValue+ '">';
var $rte = document.parentWindow.document.getElementById(fieldId);
var rteDoc = $rte.document.selection;
var range = rteDoc.createRange();
range.pasteHTML(imgHtml);
如果我选择文本,这是有效的,但当我只是将光
我编写了当用户在文本字段中键入内容时替换文本的功能。我分别为chrome firefox safari和opera编写代码。我为较新的IE-s编写了代码,但是我不能修改它以适应IE8。请帮助我让它在那个环境下工作。我现在根本不寻找IE7,因为它太有问题了,但我需要为IE8使用它。
if (document.selection && document.selection.createRange) {
var selectionRange = document.selection.createRange();
var textInputRan
我们在Delphi中使用标准的TWebbrowser组件,它在内部使用mshtml.dll。此外,我们使用注册表来确保页面使用新的呈现引擎(,)呈现。因此,我们使用IE 10的渲染,但我们有相同的结果与IE8到IE11。
使用标准的IE7渲染机器是正确的,但是由于新的渲染选项,我们需要新的渲染。
我们使用控件的设计模式使用户能够对文档进行更改:
var
mDocument: IHTMLDocument2;
begin
mDocument := ((ASender as TWebBrowser).Document as IHTMLDocument2);
mDocument.desig
我想将SpanElement插入到DOM的当前(光标)位置。我使用这个VB6函数:
Private Function InsertSpan(Tipo As String, Nome As String)
Dim oSpan As MSHTML.HTMLSpanElement
Dim oCurElement As MSHTML.IHTMLElement
Dim oDOM As MSHTML.HTMLDocument
Set oDOM = HTMLEdit.DOM
Set oCurElement = oDOM.activeElement
Set oSpan = oDOM.createElem
UPDATE添加了步骤图像。
我一直在思考与有关的所有事情,我即将完成我想要实现的目标,但最后这一项让我感到困惑。我使用扩展来帮助创建一个自定义按钮,该按钮启动一个函数,然后单击一个按钮。在我尝试将一些新的HTML粘贴到编辑器之前,一切都很棒。下面是jQuery单击函数:
$(document).on('click', 'a.tag_person', function(){
var name = $(this).text();
var id = $(this).data('id');
var link = '
在contenteditable div中,我输入一些像@ab这样的单词,并得到一个用户弹出窗口,然后如果我用鼠标在弹出窗口中选择用户'abc‘,用户可以将@abc插入到div中,但光标将丢失。如果我选择user by keycoard,这是可以的。
例如: //currentRange include @ab //elem is contenteditable
elem = $this.get(0);
elem.focus();
var inputStr = <a href="userlink">@abc</a>