Oneshot Gems
Jetzt spielen

Für Spieleentwickler

Behandeln Sie den Abbruch als vollständigen Eingabepfad

Eine Zeigerinteraktion endet nicht immer mit pointerup. Der Browser kann sie abbrechen, wenn eine Berührung zum Scrollen oder Zoomen der Seite führt oder wenn Gerät oder Browser keine weiteren Ereignisse für diesen Zeiger liefern können. Fehlt die Abbruchbehandlung in der Zustandsmaschine des Spiels, kann ein gezogenes Objekt hängen bleiben oder eine gehaltene Aktion endlos weiterlaufen.

Auf dieser Seite

Machen Sie die Bereinigung idempotent

Wenn pointerdown ein Ziehen startet, speichern Sie die aktive pointerId und das Objekt oder die Aktion, deren Eigentümer sie ist. Sowohl pointerup als auch pointercancel sollten diese Interaktion beenden und ihren Status löschen. Schreiben Sie eine Bereinigung, sodass es harmlos ist, sie nach einer bereits beendeten Aktion aufzurufen. Dies vereinfacht den Umgang mit Erfassungsverlusten, Fensteränderungen und wiederholten defensiven Aufräumarbeiten.

Wenn Sie die Zeigererfassung verwenden, achten Sie auf „lostpointercapture“ als weiteres Signal dafür, dass die Interaktion den Zeiger nicht mehr besitzt. Interpretieren Sie einen Abbruch nicht als erfolgreichen Ablegen, es sei denn, das Spiel definiert dieses Ergebnis ausdrücklich. Ein abgebrochenes Ziehen könnte ein Objekt an seine Startposition zurückbringen, die letzte gültige Position beibehalten oder die Bewegung abbrechen; Wählen Sie eine Regel und kommunizieren Sie diese durch eine visuelle Rückmeldung.

Testen Sie die Übernahme von Browser-Gesten

Versuchen Sie es mit einem Ziehen, das auf der Spieloberfläche beginnt und sich bis zum Bildschirmrand fortsetzt, einem vertikalen Scrollen der Seite, das über der Oberfläche beginnt, einer Drehung während des Haltens und dem Berühren einer anderen Stelle mit einem zweiten Finger. Vergewissern Sie sich, dass sich nach dem Abbruch kein Charakter mehr bewegt und keine Taste sichtbar gedrückt bleibt.

Die Eigenschaft touch-action beeinflusst, welche Gesten der Browser ausführt. MDN erklärt, dass Browser pointercancel auslösen können, wenn sie das Schwenken oder Zoomen übernehmen. Behandeln Sie den Abbruch als ein normales Ergebnis, das Ihr Interaktionsmodell verarbeiten muss.

Fragen zu ⁨Zeigerabbruch in Spielen⁩

Ist pointercancel ein fehlgeschlagener pointerup?

Es ist ein separates Signal, dass der Zeiger die aktuelle Interaktion nicht mehr fortsetzt. Führen Sie die Bereinigung durch und wenden Sie die Abbruchregel des Spiels an, anstatt davon auszugehen, dass die Aktion abgeschlossen ist.

Kann touch-action jede Zeigerabbruch verhindern?

Nein. Es steuert die Handhabung von Berührungsgesten durch den Browser, aber andere Bedingungen können die Zeigerübermittlung dennoch beenden. Behalten Sie die Abbruchbehandlung bei, auch wenn die Spieloberfläche über benutzerdefinierte Gestenregeln verfügt.

Weiterlesen

Etwas nicht mehr aktuell? Korrektur melden

Spiel weiter.

Kostenlose Browserspiele, jederzeit bereit. Entdecke etwas, das dir Spaß macht, und finde dein nächstes Lieblingsspiel.

Folge deiner Neugier