Follow

Habe hier eine impress.js-Website mit Autoplay-Videos, die aber in Firefox nur gemuted autoplayen dürfen weil Autoplay-Block bis User*in mit der Seite „interagiert“. Macht ja auch Sinn. Aber Pfeiltasten (für „nächste Slide“) zählen nicht, weil man ja evtl. nur scrollen wollte. 😩

Ich kann jetzt also problemlos bis zu den entsprechenden Videos navigieren ohne die Seite durch Interaktion zu „aktivieren“ und sie dürfen dann immer noch keinen Ton spielen.

Wann genau bin ich eigentlich in die Frontend-Schiene gerutscht und kann ich das noch korrigieren?

Klar, wenn das „meine“ Präsi wäre, könnte ich einfach vorher irgendwas klicken und alles wär kein Problem. Wird aber ne öffentliche Website.

Mein Workaround wird jetzt ein Button am Anfang und man kann nicht durch das impress navigieren bevor man den nicht geklickt hat. 🤷‍♂️💁‍♂️

Dieses ganze Problem ist so’n Ding wo alle Designentscheidungen für sich betrachtet komplett Sinn ergeben und das Endresultat trotzdem kacke ist.

impress.js bringt übrigens die Funktionalität mit, dass man auf einem Step (lies: einer „Slide“) ne CSS-Klasse „stop“ setzen kann. Dann kann man von der aus nicht weiter navigieren.

Fun fact: Man kann aber ZURÜCK navigieren, vom ersten zum letzten Schritt ARGHHHH

*eigenesimpresspluginschreibegeräusch*

Komplettes Verbot der Navigation bis man meinen tollen Button klickt implementiert. Natürlich soll beim Klick auf den Button dann gleich zum nächsten Step navigiert werden. Das ging nicht.

_Warum_ das nicht ging hat mich ne Stunde Debugging gekostet.

Ich mach in dem Button-Eventhandler `impress().next()`. Aber nix passierte. Natürlich hab ich meinen Navigationsverbotscode im Verdacht gehabt. Aber nein! Impress hat nämlich nen eigenen Clickhandler, der dafür sorgt, dass zu nem angeklickten Step immer hin navigiert wird.

Die Füchse von euch können sich jetzt schon denken, was das Problem war. Alle anderen können noch kurz überlegen.

Naja, Button geklickt, mein Eventhandler deaktiviert das Navigationsverbot und sagt `next()`.

Aber DANN

bubblet das Event WEITER

zum Impress-eigenen Slide-Clickhandler

und der sagt „oh, du hast den Button hier auf der Slide geklickt“

also navigier ich dich DORTHIN ZURÜCK.

@scy reveal.js kann per Leertaste zur nächsten Slide wechseln, kann impress.js das evtl auch und hilft das?

@psy 1. ja, 2. nein, weil das ja niemanden davon abhält, trotzdem die Pfeiltasten zu nehmen.

@scy Ah, ich - äh - hab nicht zu Ende gelesen m(

Button zum Klicken klingt da fast nach der sinnvollsten Lösung.

Sign in to participate in the conversation
scy.name

This is the personal Mastodon instance of Tim Weber (also known as scy). Because federation.