Is it possible to detect what text has been selected in a text area using Javascript? I'm looking to show the user controls only when they have selected text
            Asked
            
        
        
            Active
            
        
            Viewed 4,449 times
        
    2
            
            
        - 
                    Possible duplicate of http://stackoverflow.com/questions/401593/javascript-textarea-selection ? – pioto Mar 19 '11 at 01:49
 
2 Answers
2
            
            
        I've written a cross-browser function for getting the text selected in a textarea or text input and after some toing and froing the final version is I think the best one I've seen. I've posted it on Stack Overflow a few times before. Here's one example: Is there an Internet Explorer approved substitute for selectionStart and selectionEnd?
To detect when the user makes a selection in a textarea, you can use the select event:
var textarea = document.getElementById("some_id");
textarea.onselect = function() {
    var selection = getInputSelection(textarea);
    var selectedText = textarea.value.slice(selection.start, selection.end);
    console.log("Selected text: " + selectedText);
};