Code Elemente - HTML - CSS - JS
Beispieldatei im neuen Fenster ansehen/anhören: Parallax-audio
Der Quelltext wurde erfolgreich in die Zwischenablage kopiert.
Hinweis
HTML: Das Audio-Element inizialisiert die Audio-Dateien:
<audio id="audiostart" preload="auto" loop/>
<source src="audio/urnersee.mp3" type="audio/mpeg">
</audio>
<audio id="audio01" preload="auto"/>
<source src="audio/gong1.mp3" type="audio/mpeg">
</audio>
<audio id="audio02" preload="auto"/>
<source src="audio/gong2.mp3" type="audio/mpeg">
</audio>
Mit jQuery wird die Audiodatei gestartet. Dazu wird die Position des Scrollbalkens wird ermittelt:
<script type="text/javascript">
var s = skrollr.init({
// forceHeight: false,
render: function(data) {
//console.log(data.curTop);
$('#offset').text(data.curTop);
}
});
</script>
Innerhalb der Funktion kann jetzt die Audiodatei gestartet werden:
<script type="text/javascript">
var s = skrollr.init({
// forceHeight: false,
render: function(data) {
//console.log(data.curTop);
$('#offset').text(data.curTop);
if (data.curTop > '0' && data.curTop < '50'){
var audiostart0 = document.getElementById("audiostart");
audiostart.pause();
}
if (data.curTop > '50' && data.curTop < '150'){
var audiostart0 = document.getElementById("audiostart");
audiostart.play();
}
if (data.curTop > '330' && data.curTop < '350'){
var audiostart1 = document.getElementById("audio01");
audio01.play();
}
if (data.curTop > '650' && data.curTop < '800'){
var audiostart2 = document.getElementById("audio02");
audio02.play();
}
if (data.curTop > '0' && data.curTop < '500'){
var audiostart3 = document.getElementById("audio03");
audio03.pause();
}
if (data.curTop > '900' && data.curTop < '1000'){
var audiostart3 = document.getElementById("audio03");
audio03.play();
}
}
});
</script>
Eine einmal gestartet Audiodatei wird abgespielt, bis zum Schluss oder bis sie gestoppt wird. Ein weiter-scrollen stoppt das abspielen nicht.