Comment gérer « Uncaught (in promise) DOMException : play() a échoué car l'utilisateur n'a pas d'abord interagi avec le document sur le bureau à l'aide de Chrome 66 ?
P粉651109397
2023-08-23 19:57:46
<p>J'ai reçu un message d'erreur..</p>
<blockquote>
<p>Non capturé (promis) DOMException : play() a échoué car l'utilisateur n'a pas d'abord interagi avec le document. </p>
</blockquote>
<p>..Lorsque vous essayez de lire une vidéo sur un ordinateur à l'aide de Chrome version 66. </p>
<p>J'ai trouvé une annonce dont la lecture a démarré automatiquement sur le site, mais avec le code HTML suivant : </p>
<pre class="brush:php;toolbar:false;"><vidéo
title="Publicité"
webkit-playsinline="true"
joue en ligne = "true"
style="couleur de fond : rgb(0, 0, 0); position : absolue; largeur : 640 px; hauteur : 360 px ;"
src="http://ds.serving-sys.com/BurstingRes/Site-2500/Type-16/1ff26f6a-aa27-4b30-a264-df2173c79623.mp4"
autoplay=""></video></pre>
<p>Contourner le bloqueur de lecture automatique de Chrome v66 est très simple, ajoutez simplement <code>webkit-playsinline="true"</code>, <code>playsinline="true"</ Le >autoplay=" " attribut des éléments code> et <code <code=""><video></video></code> ? Est-ce que cela aura des conséquences négatives ? </p>
Pour créer une lecture automatique d'un élément HTML 5 après la mise à jour de Chrome 66, il vous suffit d'ajouter l'attribut
muted
à l'élément vidéo.Donc, votre vidéo HTML actuelle
Juste besoin
muted="muted"
Je pense que la mise à jour de Chrome 66 tente d'empêcher les onglets de faire du bruit aléatoire sur les onglets des utilisateurs. C'est pourquoi l'attribut muet permet à la lecture automatique de fonctionner à nouveau.