focus()
Johannes Bühner
- javascript
Hallo Forum!
Folgendes Problem:
Bei einem ganz bestimmten Event soll der Focus auf eine Textarea gesetzt werden. Befindet sich das Fenster mit der Area jedoch nicht im Vordergrund (also Arbeitet der User beispielsweise in Word), soll dabei das Fenster NICHT in den Vordergrund geholt werden. Ist sowas möglich?
Vielen Dank und Grüße
Joe
Bei einem ganz bestimmten Event soll der Focus auf eine Textarea gesetzt werden. Befindet sich das Fenster mit der Area jedoch nicht im Vordergrund (also Arbeitet der User beispielsweise in Word), soll dabei das Fenster NICHT in den Vordergrund geholt werden. Ist sowas möglich?
Welcher ominösen Event wird ausgelöst, wenn man mit Word arbeitet?
Struppi.
In einigen weiteren Frames dieses Fensters überwachen andere Scripte ob neue relevante Datenbankeinträge vorhanden sind. Ist dies der Fall wird die Seite aktuallisiert und der Inhalt der Textarea vor der Aktuallisierung wieder in die Area geschrieben. Anschliesend noch der Focus auf die Area, damit der User da weitertippen kann wo er vor der Aktuallisierung war.
Dies geschieht natürlich auch, wärend der User im Word arbeitet. In dem Fall soll aber das Fenster nicht vor´s Word geholt werden.
In einigen weiteren Frames dieses Fensters überwachen andere Scripte ob neue relevante Datenbankeinträge vorhanden sind. Ist dies der Fall wird die Seite aktuallisiert und der Inhalt der Textarea vor der Aktuallisierung wieder in die Area geschrieben. Anschliesend noch der Focus auf die Area, damit der User da weitertippen kann wo er vor der Aktuallisierung war.
Dann musst du dir einen Flag bauen, der signalisiert dass die Situation so ist wie du sie schilderst.
Struppi.
Hi,
Ist sowas möglich?
Ja. Folgendes Script in den HEAD packen:
var activeWin=true;
window.onblur=function() { activeWin=false; }
window.onfocus=function() { activeWin=true; }
Und dann das Fokussieren mit if(activeWin) umklammern ...
Gruß, Cybaer
Vielen Dank! So ähnlich hab ichs gelöst!
if(window.focus)
Grüße
Joe
Hi,
Vielen Dank! So ähnlich hab ichs gelöst!
Das ist fein! Allerdings ...
if(window.focus)
... ist diese Bedingung *immer* wahr, wenn das window-Objekt fokussiert werden kann, sprich, der Browser die notwendige Programmlogik mitbringt, was ab JavaScript 1.1 der Fall ist. Für JS-1.0-Browser ist die Bedingung immer unwahr.
Ob das Fenster (bei einem Browser mit JS >=1.1) im Vordergrund ist oder nicht, kann man so nicht feststellen.
Gruß, Cybaer
...schäm
Habs inzwischen selbst gemerkt, das es net funktioniert.
Hab jetzt eins zu eins Deine Lösung übernommen. Jetzt klappts!
Nochmals vielen Dank
Joe