10
votes

Extension Firefox: Obtenez du texte sélectionné

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);


1 commentaires

élément.value.substring (élément.selectionstart, élément.selectionend); travaillé.


3 Réponses :


1
votes

Cela fonctionne dans Firefox Javascripting, donc devrait être ok xxx

mon devinette est ce document.commanddispatcher.focususedwindow échoue


0 commentaires

0
votes

est-ce une extension de firefox normale ou est-ce une extension de Firefox de jetpack Firefox.

in jetpack, il serait xxx

ou vous pouvez simplement accéder directement à la fenêtre directement avec < code> fenêtre.getselection () comme DCaunt suggéré


0 commentaires

10
votes

Votre problème est que document.commanddispatcher.focusedwindow 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 ()


1 commentaires

Je devais remarquer que je veux obtenir le texte sélectionné dans une Textarea. Cela n'a travaillé que avec SelectionStart et Selectendend.