• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

[ERLEDIGT] Probleme mit dem hide() bei dem Iphone/Ipad

hakura

Mitglied
Hallo Community,
ich habe ein Problem das ich nicht Lösen kann. Auf meiner Homepage öffne ich ein Fenster. In dem Fenster ist ein Kreuz rechts oben positioniert. Bei einem klick auf das Kreuz, wird das Fenster geschlossen. Alles funktioniert perfekt auf Desktop-Devices. Aber sobald ich die Seite auf einem Mobile oder Tablet-Device aufrufe, funktioniert das schliessen mit JQuery nicht. Es passiert nichts.

Hier mein Code fürs schliessen:

$( document ).on("click", ".close", function (event) {
$(".registrationForm").hide();
Ich verstecke hier die .registrationForm CSS-Klasse sobald auf die .close-Klasse geklickt wird.

Danke für die Hilfe.
 
Werbung:
Hmm, mal mit einem alert() versucht, ob der Eventhandler funktioniert? Vielleicht ist das Kreuz auf einem Touchscreen ja schwer zu treffen.

Alternativ würde ich ein Media Query einbauen, welches das Element bei kleinen Viewports automatisch ausblendet.
 
Hm ich weiß jetzt nicht, ob das auch hier der Fall ist aber als ich letztens am iPad ein Click-Event an den body binden wollte ging es stattdessen nur am document und auch nur mit "touchstart" als zusätzliches Event neben click.
 
Werbung:
Dann versuche es doch mal anders. Sofern dein X nicht nachträglich ins DOM eingefügt wird, sollte es auch Eventdelegation funktionieren, die auf ein Parent aufgerufen wird.

Also:
$('.close').on('click', function(e) {.....});
$('.close').click(function(e) {...});
 
Werbung:
Also wenn ich es so schreibe:
$(document).on("click touchstart", ".close", function(event) {
$( ".registrationForm" ).hide();
});

Dann funktioniert es auf dem Iphone.
Das Fenster schliesst sich jetzt immer wenn ich auf das X klicke.
Vielen Dank für eure Hilfe.
 
Zurück
Oben