How to get a selected text inside a iframe.
I my page i'm having a iframe which is editable true. So how can i get the selected text in that iframe.
How to get a selected text inside a iframe.
I my page i'm having a iframe which is editable true. So how can i get the selected text in that iframe.
Ignore what I had wrote, it was garbage.
Here is the real deal:
var iframe= document.getElementById('yourFrameId');
var idoc= iframe.contentDocument || iframe.contentWindow.document; // For IE.
alert(idoc.getSelection());
The above was blatantly stolen from bobince's answer to this SO Question
Im not sure exactly what you mean by selected text but this is how you access the contents of an iframe with jquery
$('#iFrameID').contents().find('#whatImLookingFor').text(getSelectedText());
function getSelectedText(){
if(window.getSelection){
return window.getSelection().toString();
}
else if(document.getSelection){
return document.getSelection();
}
else if(document.selection){
return document.selection.createRange().text;
}
}
Not sure what you mean by editable true for an iframe. May be it is a textfield or textarea. But if you really have an iframe and some text in it is selected then here is a code segment that should work on a number of browsers:
var iframe = document.getElementById("frame1");
var txt = "";
if (iframe.contentWindow.getSelection) {
txt = iframe.contentWindow.getSelection();
} else if (iframe.contentWindow.document.getSelection) {
txt = iframe.contentWindow.document.getSelection();
} else if (iframe.contentWindow.document.selection) {
txt = iframe.contentWindow.document.selection.createRange().text;
}