"We are back" « oc.at

Javascript Problem

mike_swordfish 25.01.2005 - 19:55 554 2
Posts

mike_swordfish

Bloody Newbie
Registered: Jan 2005
Location: vienna
Posts: 1
Hi,

Ich bastele gerade an einer sehr abgespeckten Version von BBCode :rolleyes:

Dabei bin ich auf folgendes Problem gestoßen:
Das folgende Script funktioniert recht gut, wenn es in einem Solo-Fenster aufgerufen wird...

Sobald es aber in einem Frame aufgerufen wird, wird zwar der Code im Formular eingefügt, jedoch immer an Position 1... der per Maus markierte Text wird hierbei ignoriert.

Ich denke, das es hier an der Adressierung liegt:
Zitat
range = document.selection.createRange();

Wenn das Script in einem _top-Fenster ausgeführt wird, enthält die Variable range den STRING "markierter Text". sobald es aber in einem Frame-Fenster ausgeführt wird, ist dieser STRING LEER !!!

Versuche meinerseits habe ich jetzt nach ca. 5 Stunden aufgegeben...
Was nicht geklappt hat, waren diese Varianten:
Zitat
  • range = window.selection.createRange();
  • range = parent.frames[0].selection.createRange();
  • range = parent.frames[1].selection.createRange();
  • range = parent.NAMEdesFRAMES.selection.createRange();
Ich habe nur ein Frameset mit 2 Frames.
Dabei soll das Script eh nur im eigenen Frame agieren, was es aber nicht tut X(

Kann mir da biiiiite jemand helfen ???

Hier das Script:

Zitat
Javascript

function insert(aTag, eTag) {

var input = document.forms['formular'].elements[field];
input.focus();
if(typeof window.selection != 'undefined') {

// Einfügen des Formatierungscodes
var range = document.selection.createRange();
var insText = range.text;
//alert(insText); //debug
range.text = aTag + insText + eTag;

// Anpassen der Cursorposition
range = document.selection.createRange();
if (insText.length == 0) {
range.move('character', -eTag.length);
} else {
range.moveStart('character', aTag.length + insText.length + eTag.length);
}
range.select();
}...

thx a lot

watchout

Legend
undead
Avatar
Registered: Nov 2000
Location: Off the grid.
Posts: 6845
entwickelst du unter IE?

atrox

in fairy dust... I trust!
Avatar
Registered: Sep 2002
Location: HTTP/1.1 404
Posts: 2782
wenn du vermutest, das problem liege in der falschen referenz zum frameset, dann wäre es nicht schnelcht, eine mini-frameset zum testen/debuggen mitzuliefern.
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz