Sie verwenden unter dem Audio folgendes Script:
<script type="text/javascript">
<!--
window.addEventListener("load", function() {
window.setTimeout(function() {
var audio = document.getElementById("audio253");
if (audio.paused) {
var box = document.getElementById("audio253_box");
box.style.width = "";
box.style.height = "";
box.style.overflow = "";
box.style.opacity = "";
box.className = "spacing";
}
}, 250);
});
// -->
</script>
Meiner Einschätzung nach macht das Script genau das, was es soll. Es prüft kurz nach dem laden er Seite, ob das Audio gerade pausiert ist - und zweigt es an. Die Frage wäre eher, warum das in Firefox nicht (!) funktioniert, wenn man durch Abklemmen der Lautsprecher dafür sorgt, dass das Abspielen nicht funktioniert. Aber das ist eine andere Frage.
Für die Lösung des vorliegenden Problem stellt sich eher die Frage, warum das autoplay
in Chrome nicht funktioniert. Eine Antwort darauf habe ich nicht, aber möglicherweise einen Lösungsansatz: Rufen Sie 250ms nach Laden der Seite die Funktion play() für das Audio-Element (nicht für das DIV, versteht sich) auf. Und blenden Sie den Player erst nach 1 Sek. ein, wenn es dann immer noch nicht läuft.
Für das zuverlässige Ein-/Ausblenden hat es sich übrigens gewährt, die Position von absolute
und left
auf -20000px
zu setzen. Dann muss man zum Einblenden nicht alles ändern, sondern nur die Positionierung. Sie können dafür auch die Klasse "screenreader" missbrauchen.