onkeydown in iframe nicht möglich?
dounut
- javascript
Hallo, ich möchte einen iframe (mit serverexternen inhalt) per Pfeiltasten verschieben, so funktioniert das auch ganz gut, das Problem ist nur, dass ich sobalt ich in den iframe klicke die Pfeiltasten nicht mehr benutzten kann. Kennt da jemand einen Rat? Hier der Code:
function key(event) {
if (event.keyCode == 39) {
move("right");
}
if (event.keyCode == 37) {
move("left");
}
document.onkeydown = key;
Das gleiche Problem tritt übrigends auch nach einer alert() meldung auf. In beiden fällen muss erst wieder in das eigentliche Dokument geklickt werden.
Hi,
ich möchte einen iframe (mit serverexternen inhalt) per Pfeiltasten verschieben, so funktioniert das auch ganz gut, das Problem ist nur, dass ich sobalt ich in den iframe klicke die Pfeiltasten nicht mehr benutzten kann.
doch, klar kannst du - nur werden sie dann vom eingebundenen Fremddokument verarbeitet. ;-)
Das gleiche Problem tritt übrigends auch nach einer alert() meldung auf. In beiden fällen muss erst wieder in das eigentliche Dokument geklickt werden.
Natürlich. Tastaturereignisse werden von dem Fenster verarbeitet, das gerade den Focus hat. Durch Anklicken wird ein Fenster normalerweise focussiert (sofern möglich).
Sorge also dafür, dass der Focus da ist, wo du ihn haben möchtest.
Ciao,
Martin
Sorge also dafür, dass der Focus da ist, wo du ihn haben möchtest.
Danke für die Antwort
Ich habs jetzt mit <body onblur="fokus()"> versucht, das problem ist dann aber, dass ich im iframe nicht mehr arbeiten kann (z.B. Texteingaben tätigen). Gibt es eine möglichkeit einen Tastendruck im iframe zu überprüfen und dann gegebenenfalls auf das Dokument zu fokussieren?
Hi,
Ich habs jetzt mit <body onblur="fokus()"> versucht,
Und wie sieht Deine fokus()-Funktion aus?
das problem ist dann aber, dass ich im iframe nicht mehr arbeiten kann (z.B. Texteingaben tätigen). Gibt es eine möglichkeit einen Tastendruck im iframe zu überprüfen und dann gegebenenfalls auf das Dokument zu fokussieren?
Am sinnvollsten wäre es, wenn Du ohne iframe auskämst - also serverseitig den iframe-Inhalt in die eigentliche Seite integrieren könntest.
cu,
Andreas
Hi,
Ich habs jetzt mit <body onblur="fokus()"> versucht,
Und wie sieht Deine fokus()-Funktion aus?
<body onblur="this.focus()"> sollte das heißen. Meine schuld ;)
Am sinnvollsten wäre es, wenn Du ohne iframe auskämst - also serverseitig den iframe-Inhalt in die eigentliche Seite integrieren könntest.
cu,
Andreas
Das Problem ist dann, das ich sobalt ich auf einen Link klicke von der eigentlichen Seite geschmissen werden oder gibst da einen Trick?
Hi,
Das Problem ist dann, das ich sobalt ich auf einen Link klicke von der eigentlichen Seite geschmissen werden
wieso sollte das ein Problem sein? Das ist das Verhalten, das ich erwarten würde ...
oder gibst da einen Trick?
Wenn die verlinkte Seite in einem anderen Fenster/Tab geöffnet werden soll, Ctrl gedrückt halten beim Klick. Oder mit der mittleren Maustaste. Oder was auch immer im Browser konfiguriert ist für neues Fenster/neuen Tab.
cu,
Andreas