Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript textarea的window.getSelection()在firefox中不工作?_Javascript_Firefox - Fatal编程技术网

Javascript textarea的window.getSelection()在firefox中不工作?

Javascript textarea的window.getSelection()在firefox中不工作?,javascript,firefox,Javascript,Firefox,我正在尝试在HTML页面上获取选择文本 我在textarea上使用了下面的代码和window.getSelection(),但在firefox中不起作用, 但在谷歌浏览器中运行良好 我使用的是firefox 24和chrome 27 以下是一个示例: HTML: 由于以下原因,getSelection似乎无法处理表单字段中选择的文本 如中所述,解决方法是使用selectionStart和selectionEnd 下面是一个正确工作的修改示例: Refer:这是由于a(是的,14年前)。这个

我正在尝试在HTML页面上获取选择文本

我在textarea上使用了下面的代码和
window.getSelection()
,但在firefox中不起作用, 但在谷歌浏览器中运行良好

  • 我使用的是firefox 24和chrome 27
以下是一个示例:

HTML:


由于以下原因,
getSelection
似乎无法处理表单字段中选择的文本

如中所述,解决方法是使用
selectionStart
selectionEnd

下面是一个正确工作的修改示例:


Refer:这是由于a(是的,14年前)。这个问题还有其他解决方案吗?我将“textarea”改为“:focus”,因此如果有多个textarea或输入字段,它将在事件中起作用:
<div>Text in div</div>
<textarea>Hello textarea</textarea>
<div id='debug'></div>
$(document).on('mouseup','body',function(){
   $("#debug").html("You select '" + getSelectionText() + "'");
});

function getSelectionText() {
    if (window.getSelection) {
        try {
            // return "" in firefox
            return window.getSelection().toString();
        } catch (e) {
            console.log('Cant get selection text')
        }
    } 
    // For IE
    if (document.selection && document.selection.type != "Control") {
        return document.selection.createRange().text;
    }
}