selected text in iframe
How to get a selected text inside a iframe.
I my pag开发者_Go百科e 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
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;
}
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;
}
}
精彩评论