Ich habe eine einfache JavaScript-Funktion, die einige Links auf einer Seite generiert, wenn auf eine Schaltfläche geklickt wird. Jetzt möchte ich eine Klickfunktion für diese generierten Links hinzufügen. Ich habe jedem eine Klasse hinzugefügt, aber es funktioniert immer noch nicht. Alles passiert in Echtzeit und das folgende mooTools-Skript funktioniert nicht, obwohl es auf der Seite gut geladen ist.Mootols: Wie man Klick-Funktion an programmatisch generierte Elemente bindet
window.addEvent('domready', function() {
$$('.jTrigger').addEvent('click', function(){alert('clicked!');})
})
Ich bin für die jQuery-Äquivalent von
$(document).ready(function()
{
$(".myClass").live("click", function()
{
do stuff here...
};
});
Ich würde verwenden Schließung oder jQuery (Sachen weiß ich, wie zu benutzen), aber ich bin auf einer Joomla-Backend-Plugin und mir wurde gesagt, ich solle bei MooTools bleiben.
Es gibt wahrscheinlich einige Syntax Unterschiede gibt ... noch nicht traurig zu arbeiten. –
Dies ist die korrekte Syntax für die neueste Version von Mootools. oldr-Versionen benötigen eine Ereignisdelegierung von mootools-more, damit dies funktioniert. Trotzdem würde ich nicht empfehlen, zum Dokument hinzuzufügen - stattdessen zu document.body hinzuzufügen. –
@AlexFl: Wie @Dimitar sagt, wahrscheinlich nicht zu "Dokument" hinzufügen oder idealerweise sogar zu "document.body"; Wählen Sie stattdessen den tiefsten Container aus, in dem alle Elemente enthalten sind. Die Ereignisdelegierung sollte im Allgemeinen so nah wie möglich an den Elementen durchgeführt werden (aber weit genug entfernt, um ihren Zweck zu erfüllen). –