php.de

Zurück   php.de > Webentwicklung > JavaScript, Ajax und mehr

JavaScript, Ajax und mehr dynamisches Scripten und Interaktion auf Clientebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 02.04.2009, 00:27  
Erfahrener Benutzer
 
Benutzerbild von drsoong
 
Registriert seit: 05.08.2008
Beiträge: 1.127
drsoong wird schon bald berühmt werden
Standard addEventListener mit Parameter aus Event

Hi

habe folgenden Code gebastelt:

Code:
function init() {
 moveTo('txTest1');
 el = document.getElementById('txTest1');
 //Firefox
 if(el.addEventListener) {
 el.addEventListener('keydown',function () {return mt(event,'txTest2');},false);
 }
 //IE
 if (el.attachEvent) {
 el.attachEvent('onkeydown',function () {return mt(event,'txTest2');}); 
 }
 }

function mt(e,id) {
 if (!e) {var e = window.event;}
 if (e.which == 13 || e.keyCode == 13) {
  moveTo(id);
  return false;
  }
 }
function moveTo(id) {
 document.getElementById(id).focus();
}
In init(): Die IE Version funktioniert, die für Firefox nicht. Da heißt es
event sei nicht definiert. So und wie definiere ich jetzt mein Event-Objekt für Firefox. Danke schon mal.
drsoong ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 02.04.2009, 00:39  
Moderator
 
Benutzerbild von agrajag
 
Registriert seit: 02.10.2006
Beiträge: 3.820
PHP-Kenntnisse:
Fortgeschritten
agrajag wird schon bald berühmt werdenagrajag wird schon bald berühmt werden
Standard

Wundert mich, dass das im IE klappt. In beiden Fällen sollte event doch undefiniert sein?

Du solltest einfach als ersten Parameter deiner Event-Handler "event" setzen (addEventListener(function(event){....)
__________________
Today you...Tomorrow me.
agrajag ist offline   Mit Zitat antworten
Alt 02.04.2009, 00:52  
Erfahrener Benutzer
 
Benutzerbild von drsoong
 
Registriert seit: 05.08.2008
Beiträge: 1.127
drsoong wird schon bald berühmt werden
Standard Hm, danke, geht aber immer noch nicht

Habe den Code jetzt so geschrieben:
Code:
function init() {
 moveTo('txTest1');
 el = document.getElementById('txTest1');
 //Firefox
 if(el.addEventListener) {
 el.addEventListener('keydown',function (event) {return mt(event,'txTest2');},false);
 }
 //IE
 if (el.attachEvent) {
 el.attachEvent('onkeydown',function (event) {return mt(event,'txTest2');}); 
 }
 }

function mt(e,id) {
 if (!e) {var e = window.event;}
 if (e.which == 13 || e.keyCode == 13) {
  moveTo(id);
  return false;
  }
 }
function moveTo(id) {
 document.getElementById(id).focus();
}
Leider bleibt das Ergebnis gleich. In IE gibt's ja das globale window.event weswegen der das wohl als definiert ansieht. In Firefox muss ich einen Eventparameter der Funktion übergeben (?!) Verstehe ich in letzter Konsequenz nicht ganz, muss aber irgendwie schon möglich sein. Wenn ich die Funktion mt() direkt als onkeydown-Attribut ins input-tag schreibe geht das ganze auch in Firefox. Nur über das sog. advanced event handling ist mein FirefoxEvent ein Problem.
drsoong ist offline   Mit Zitat antworten
Alt 11.04.2009, 16:59  
Erfahrener Benutzer
 
Benutzerbild von phpdummi
 
Registriert seit: 06.06.2008
Beiträge: 1.631
PHP-Kenntnisse:
Anfänger
phpdummi ist zur Zeit noch ein unbeschriebenes Blatt
Standard

mediaevent.de :: Javascript :: Anmelden von Ereignissen mit dem Event Listener des DOM
__________________
"Nobody is as smart as everybody" - Kevin Kelly
— The best things in life aren't things
phpdummi ist offline   Mit Zitat antworten
Alt 13.04.2009, 23:02  
Erfahrener Benutzer
 
Benutzerbild von drsoong
 
Registriert seit: 05.08.2008
Beiträge: 1.127
drsoong wird schon bald berühmt werden
Standard

Vielen Dank an phpdummi. Interessanter Artikel. Inzwischen konnte ich in Erfahrung bringen, dass der Code ansich in IE und Firefox funktioniert. Allerdings ignoriert der FF das return false (in der Funktion mt) und schickt das Formular dann doch ab. Wie bringe ich dem FF denn jetzt bei das return false doch zu beachten? Gruß und frohe Ostern.
drsoong ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Event: User Regestrierung in die Datenbank??? Dunkelelf9 Datenbanken 2 22.12.2008 15:49
[Erledigt] Parameter in JavaScript übergeben stefanus JavaScript, Ajax und mehr 3 24.09.2008 22:51
[Erledigt] PHP5: Request Parameter werden nicht korrekt ausgegeben dmecir PHP Tipps 2008 11 20.08.2008 17:37
jQuery: Parameter an onclick Event ecomeback HTML, Usability und Barrierefreiheit 1 08.04.2008 11:23
$_GET, $_POST direkt auslesen oder als Parameter Igäl PHP Tipps 2008 5 17.08.2007 14:36
Event in Kalender ausgeben zoro PHP Tipps 2007 3 02.05.2007 13:40
Parameter überschreiben Igäl PHP Tipps 2006 8 04.06.2006 19:55
Variable als optionalen Parameter? Mex PHP Tipps 2006 3 20.04.2006 07:05
?id= und andere Parameter Beitragsarchiv 10 12.04.2006 09:43
Parameter wird nicht übergeben HTML, Usability und Barrierefreiheit 4 06.10.2005 13:53
einen parameter verstecken seven-12 PHP Tipps 2005-2 8 27.07.2005 16:57
[Erledigt] Parameter uebergeben PHP Tipps 2005-2 10 20.07.2005 16:55
functionen - optionale Parameter PHP Tipps 2005 7 23.05.2005 19:08
[Erledigt] probleme mit event datenbank Datenbanken 1 04.09.2004 00:30
Alle $_GET[] parameter auslesen PHP Tipps 2004 3 09.08.2004 14:14

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
javascript addeventlistener parameter, addeventlistener parameter, javascript event parameter, javascript addeventlistener parameter übergeben, addeventlistener, addeventlistener keydown, javascript addeventlistener, addeventlistener javascript, javascript event handler parameter, php event listener, addeventlistener parameter übergeben, firefox addeventlistener, eventlistener parameter, addeventlistener javascript parameter, javascript addeventlistener key, js addeventlistener, addeventlistener firefox, eventlistener parameter übergeben, addeventlistener key, javascript addeventlistener keydown

Alle Zeitangaben in WEZ +2. Es ist jetzt 10:39 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum