kostenloser Webspace werbefrei: lima-city


Javascript 'OnClick-Historie' unterbrechen

lima-cityForumDie eigene HomepageHTML, CSS & Javascript

  1. Autor dieses Themas

    programtools

    programtools hat kostenlosen Webspace.

    Hi,
    ich stehe vor einem sicher nicht unbekanntem Problem:
    Klicke ich auf ein zB Bild in einem Div element wird neben dem OnClick Event des Bildes auch das des Divs ausgelöst.
    Meine Frage ist nun, ob es einen einfachen weg gibt, dies zu verhindern?

    MFG
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Autor dieses Themas

    programtools

    programtools hat kostenlosen Webspace.

    bladehunter schrieb:
    Das passende Stichwort dazu nennt sich event bubbling.

    Schau mal hier: http://stackoverflow.com/questions/5971601/javascript-event-bubbling


    Super vielen Dank! Das ist genau was ich brauchte. Von dem Event hatte ich schon gelesen (meistens als e) wusste aber nicht das man das so einfach bekommt. Und mit 'onklick löst auch das onklick des elternelements aus' konnte google mir auch nicht helfen....
    Eventbubbling heisst das also :)

    Super! Vielen Dank!!



    EDIT:

    Leider stoße ich auf ein problem, wenn ich diese Funktion dynamisch erstellten Elementen zuweisen möchte:
    element.onclick = new Function("myFunc(this, event);");


    Das erzeugt den Fehler: ReferenceError: event is not defined

    Wie kann ich das problem lösen?
    MFG

    Beitrag zuletzt geändert: 24.4.2013 22:02:12 von programtools
  4. Na das Problem ist, dass event nicht definiert ist! Wie es aus der Fehlermeldung hervorgeht. Außerdem ist ja sowohl this als auch event unsinnig da du ja das Element schon kennst (sonst könntest du ihm ja nichts zuweißen) und weiterhin ist dir das event auch bekannt nämlich das drücken des Buttons
  5. Autor dieses Themas

    programtools

    programtools hat kostenlosen Webspace.

    jam00 schrieb:
    Na das Problem ist, dass event nicht definiert ist! Wie es aus der Fehlermeldung hervorgeht. Außerdem ist ja sowohl this als auch event unsinnig da du ja das Element schon kennst (sonst könntest du ihm ja nichts zuweißen) und weiterhin ist dir das event auch bekannt nämlich das drücken des Buttons


    Hi,

    das this in den Aufruf zu schreiben macht schon sinn, da das Element zum Zeitpunkt des Clicks benötigt wird, nicht das zum Zeitpunkt des Erstellens. (Sonst könnte ich natürlich 'element' direkt nehmen, dieses kann sich aber zwischen generierung und Klick verändern).

    Das event brauche ich ausserdem um das eventbubbling durchzuführen, worauf sich der thread ja bezieht. Da das event mir nämlcih den 'Echten Auslöser' mitgibt und ich somit prüfen kann, ob wirklich dieses Element geklickt wurde oder eins der Kindelemente.

    MFG

    Beitrag zuletzt geändert: 29.4.2013 22:53:48 von programtools
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!