Fenster.getSelection() von textarea funktioniert nicht in firefox?
Ich versuche, die Auswahl von text auf HTML-Seite.
Ich folgenden code verwenden, und window.getSelection()
auf textarea-Nähte nicht in firefox,
aber funktioniert in Google Chrome.
- Ich bin mit firefox 24 und chrome 27.
Hier ist ein Beispiel:
http://jsfiddle.net/AVLCY/
HTML:
<div>Text in div</div>
<textarea>Hello textarea</textarea>
<div id='debug'></div>
JS:
$(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;
}
}
- Siehe: stackoverflow.com/questions/717224/...
- Dies wird durch eine Firefox bug eingereicht, im Jahr 2001 (ja, vor 14 Jahren).
Du musst angemeldet sein, um einen Kommentar abzugeben.
Scheint es
getSelection
funktioniert nicht auf ausgewählten text in Formularfelder durch diese Firefox-bug.Erläutert in diese Antwort, die Problemumgehung ist die Verwendung
selectionStart
undselectionEnd
statt.Hier ist ein modifiziertes Beispiel, der richtig arbeitet:
http://jsfiddle.net/AVLCY/1/