borisbaer: Meine toggleAttribute-Funktion will den alten Wert nicht überschreiben

Beitrag lesen

Hallo zusammen,

seltsamerweise möchte meine JS-Funktion den bereits vorgegeben Wert eines Aria-Attributs nicht überschreiben und ich verstehe nicht, woran das liegen könnte:

function toggleAttribute ( el, attr ) {

	el.addEventListener( 'click', function() {

		let value = this.getAttribute( attr );

		if ( value == true )

			value = false;

		else value = true;

		this.setAttribute( attr, value );

	});

}

Wenn ich kein Aria-Attribut beim betreffenden HTML-Element angebe, dann fügt mir die Funktion zwar das Aria-Attribut hinzu, aber es überschreibt dieses beim zweiten Klicken nicht mehr.

Bitte um Hilfe.

Grüße
Boris

akzeptierte Antworten