0

次の関数を使用して、選択したテキスト (つまり、ユーザーが選択したテキスト) を contenteditable div で取得しています。これは IE 9 では完全に機能しますが、IE 8、Firefox、または Chrome (どちらも最新バージョン) では機能しません。

ここの誰かが、少なくとも Firefox と IE 8 でも動作するようにこれを変更するのを手伝ってくれませんか (Chrome は必須ではありません)。

私の機能(作業中):

function GetSelection() 
{
selTxt = '';

if (typeof window.getSelection != "undefined") 
{
    var sel = window.getSelection();
    if (sel.rangeCount) 
    {
        var container = document.createElement('div');
        for (var i = 0, len = sel.rangeCount; i < len; ++i) 
        {
            container.appendChild(sel.getRangeAt(i).cloneContents());
        }
        selTxt = container.innerHTML;
    }
} 
else if (typeof document.selection != 'undefined') 
{
    if (document.selection.type == 'Text') 
    {
        selTxt = document.selection.createRange().htmlText;
    }
}
return selTxt;
}

これについて助けてくれてありがとう、ティム。

4

1 に答える 1