使用rangy从多个iframe中获取所选文本?

时间:2014-03-31 13:34:59

标签: javascript jquery iframe rangy

这是followup question。我一直试图使用rangy从多个iframe中获取所选文本。该代码似乎适用于第一个iframe。

我想使用相同的按钮抓取元素。对于div,它可以工作k。但在iframe我们需要指定iframe,当我尝试iframe数组时,那是行不通的

2 个答案:

答案 0 :(得分:2)

使用jQuery $.each

$(function () {
    $('button').click(function () {
        $.each(iframe, function(idx, vl) {
            var selection = rangy.getSelection(iframe[idx]);
            alert(selection);
        });
    });
});

演示:http://jsfiddle.net/cWV3G/

答案 1 :(得分:2)

以下是Working Fiddle

尝试获取Rangy iframe选择对象并访问FocusNode属性并从iframe中获取所选文本,如下所示:

JS:

$(function () {
 $('button').click(function () {
   iframe.each(function(i){
    if(rangy.getSelection(iframe[i]).focusNode!=null)
     {
        var selection = rangy.getSelection(iframe[i]).focusNode.data;
        alert("Iframe - "+(i+1)+ " selected text : '" +selection+"'");
      }
   });
 });
});