【发布时间】:2012-01-05 08:43:04
【问题描述】:
我想制作一个新的 WYSIWYG 编辑器,在其中我使用了设计模式为 ON 的 Iframe,我想做类似的事情 - 当用户选择文本并单击图像按钮时,图像应该位于文本的背景中并且图片应该是切换的
【问题讨论】:
-
...在 IE 中无法正常工作...:那你有什么尝试?如果我们有一些编码上下文,我们可以为您提供帮助。
标签: javascript javascript-events
我想制作一个新的 WYSIWYG 编辑器,在其中我使用了设计模式为 ON 的 Iframe,我想做类似的事情 - 当用户选择文本并单击图像按钮时,图像应该位于文本的背景中并且图片应该是切换的
【问题讨论】:
标签: javascript javascript-events
InsertHTML 命令在 IE 中不起作用。但是,IE 的TextRange 对象有一个方便的pasteHTML() 方法,您可以使用它。
现场演示:http://jsfiddle.net/RmXgy/1/
代码:
function getSelectedText() {
var selectedText = "", sel;
if (window.getSelection) {
selectedText = "" + window.getSelection();
} else if ( (sel = document.selection) && sel.type == "Text") {
selectedText = sel.createRange().text;
}
return selectedText;
}
var sel, html = '<span style="background-image: url(foo.png)">'
+ getSelectedText() + "</span>";
if ( (sel = document.selection) && sel.type != "Control") {
sel.createRange().pasteHTML(html);
} else {
document.execCommand("InsertHTML", false, html);
}
【讨论】: