Hallo ChrisB,
getSelectedText liefert lediglich das selektierte Textstück zurück, und das soweit ich sehen kann korrekt.
Also im Opera funktioniert sie nicht. Er hängt sich an der 2. if-Bedingung if(message.isTextEdit){
auf. Sollte die wichtig sein für den IE, würde ich hier ggf. mit window.opera
nachrüsten:
function getSelectedText(theForm) {
var message = theForm.message;
var selected = '';
if(navigator.appName=="Netscape" && message.textLength>=0 && message.selectionStart!=message.selectionEnd )
selected=message.value.substring(message.selectionStart,message.selectionEnd);
else if( typeof document.selection != "undefined" ) {
if(message.isTextEdit || window.opera){
message.focus();
var sel = document.selection;
var rng = sel.createRange();
rng.colapse;
if((sel.type == "Text" || sel.type == "None") && rng != null){
if(rng.text.length > 0) selected = rng.text;
}
}
}
return selected;
}
Das läuft zumindest im Opera 10. Mehr habe ich nicht getestet.
Mit freundlichem Gruß
Micha