获取所选内容的HTML

时间:2010-07-20 16:27:41

标签: javascript iphone html uiwebview

我有一个UIWebView我想介绍内容的功能(可能是文本或文本和图像)选择,以便用户可以通过电子邮件发送它。
有没有办法使用JavaScript获取给定选择的HTML代码? 我尝试了webkit的内置剪贴板,但它似乎不适用于图像选择。可能我错了,如果有办法请告诉我。

1 个答案:

答案 0 :(得分:2)

var range, frag, sel = window.getSelection();
if (sel.rangeCount) {
    range = sel.getRangeAt(0);
    frag = range.cloneContents();
}

这将为您提供包含所选内容的DocumentFragment。您可以使用常用的DOM方法遍历片段的后代。如果您必须有文字HTML字符串,则可以执行以下操作:

var div = document.createElement("div");
div.appendChild(frag);
alert(div.innerHTML);

请注意,如果所选内容无法放入<div>内(如果选择了整个正文或文档),则最后一部分将无效。