Javascript window.getSelection().toString()不适用于Firefox(适用于Chrome)

Javascript window.getSelection().toString()不适用于Firefox(适用于Chrome),javascript,firefox,mozilla,Javascript,Firefox,Mozilla,当我在Chrome中突出显示上的数字时,window.getSelection().toString()成功地将突出显示的文本提供给我 但在Firefox中并非如此;它总是空白的。有人知道为什么吗?这真的很让人困惑,因为国家规定它应该在Firefox57中工作。这是一个Firefox错误。看 很旧的,还没修好 我使用以下代码作为解决方法: function getSelectionText() { if (window.getSelection) {

当我在Chrome中突出显示
上的数字时,
window.getSelection().toString()
成功地将突出显示的文本提供给我


但在Firefox中并非如此;它总是空白的。有人知道为什么吗?这真的很让人困惑,因为国家规定它应该在Firefox57中工作。

这是一个Firefox错误。看

很旧的,还没修好

我使用以下代码作为解决方法:

        function getSelectionText() {
            if (window.getSelection) {
                try {
                    var activeElement = document.activeElement;
                    if (activeElement && activeElement.value) {
                        // firefox bug https://bugzilla.mozilla.org/show_bug.cgi?id=85686
                        return activeElement.value.substring(activeElement.selectionStart, activeElement.selectionEnd);
                    } else {
                        return window.getSelection().toString();
                    }

                } catch (e) {
                }
            } else if (document.selection && document.selection.type != "Control") {
                // For IE
                return document.selection.createRange().text;
            }
        }        

您在哪里运行代码?使用“blank”表示空字符串?在这个页面上测试它对我来说很好。这只发生在特定的页面上吗?你能提供一个你正在使用的代码示例,以及预期的输出吗?非常奇怪的错误。我可以修改输入文本的宽度,但不能修改数字。它仍然符合规格: