Je travaille sur une simple extension Firefox et je veux obtenir le texte sélectionné. J'ai essayé ceci:
var WordCount = { /* ... */ changeSelected: function() { var selectedText = this.getSelection(); var words = this.countWords(selectedText); this.changeStatus(words, " selected"); //alert(selectedText); }, getSelection: function(e) { var focused_window = document.commandDispatcher.focusedWindow; var sel_text = focused_window.getSelection(); return sel_text.toString(); } } window.addEventListener("select", function(e) { WordCount.changeSelected(); }, false);
3 Réponses :
Cela fonctionne dans Firefox Javascripting, donc devrait être ok mon devinette est ce document.commanddispatcher.focususedwindow échoue p> p>
est-ce une extension de firefox normale ou est-ce une extension de Firefox de jetpack Firefox.
in jetpack, il serait p> ou vous pouvez simplement accéder directement à la fenêtre directement avec < code> fenêtre.getselection () code> comme DCaunt suggéré p> p>
Votre problème est que document.commanddispatcher.focusedwindow code> sera dirigé vers une fenêtre Chrome, où je suppose que vous souhaitez réellement une fenêtre de contenu. Essayez de remplacer cela avec
content.getselection () code> p>
Je devais remarquer que je veux obtenir le texte sélectionné dans une Textarea. Cela n'a travaillé que avec SelectionStart et Selectendend.
élément.value.substring (élément.selectionstart, élément.selectionend); travaillé.