Ich habe einen HTML-Code mit einem Videoelement, ohne Steuerelemente und einer Schaltfläche zum Abspielen des Videos. Aber wenn ich versuche, das Video über die Schaltfläche abzuspielen, passiert nichts.
Ich erhalte keine Fehler in der Konsole und das Video wird nicht abgespielt.
Ich kann nicht herausfinden, was falsch sein könnte.
Wenn ich das Steuerattribut im Video-Tag hinzufüge, wird das Video perfekt abgespielt, aber mein Ziel besteht nicht darin, Browser-Steuerelemente zu verwenden und meine eigenen zu erstellen.
Hier ist mein Codebeispiel. Ich habe dieses zufällige Video hier verwendet, damit die Quelle funktioniert.
Ich hoffe, jemand kann helfen. Dank im Voraus.
const video = document.querySelector('video'); const playButton = document.querySelector('button'); playButton.addEventListener('click', video.play);
<video> <source src="https://mdn.github.io/learning-area/javascript/apis/video-audio/finished/video/sintel-short.mp4" type="video/mp4"></video> <button>Play</button>
将 eventListener 的
listener
更改为:代码的问题在于,当 video.play 方法作为事件侦听器函数提供时,它会丢失上下文并失败。可以通过将该方法封装在匿名函数中来解决该问题。 请检查下面的 playButton.addEventListener(){...} 函数: