Template:AudioPlayer: Difference between revisions

From Tuyin Archives
No edit summary
Tag: Reverted
No edit summary
Tag: Manual revert
 
(24 intermediate revisions by the same user not shown)
Line 1: Line 1:
<includeonly><html>
<includeonly>{{#tag:div|Loading audio player...|class=audioplayer|data-filename={{{1}}}|data-caption={{{2|Audio File}}}}}</includeonly>
<audio id="myAudio" preload="auto">
  <source src="{{{1}}}" type="audio/ogg">
  <source src="{{{1}}}" type="audio/mpeg">
</audio>
 
<script>
function togglePlay() {
    var audio = document.getElementById('myAudio');
    var button = document.getElementById('playBtn');
   
    if (audio.paused) {
        audio.play();
        button.innerHTML = '⏸️';
    } else {
        audio.pause();
        button.innerHTML = '▶️';
    }
}
 
document.getElementById('myAudio').addEventListener('timeupdate', function() {
    var audio = document.getElementById('myAudio');
    var progress = document.getElementById('progress');
    if (audio.duration) {
        var percentage = (audio.currentTime / audio.duration) * 100;
        progress.style.width = percentage + '%';
    }
});
 
document.getElementById('myAudio').addEventListener('ended', function() {
    document.getElementById('playBtn').innerHTML = '▶️';
    document.getElementById('progress').style.width = '0%';
});
</script>
 
<div style="display: inline-flex; align-items: center; gap: 12px;">
    <div style="border: 1px solid #8B7355; padding: 8px; display: inline-block; border-radius: 4px; background-color: #F5F0E8; width: 200px;">
        <button id="playBtn" onclick="togglePlay()" style="padding: 4px 8px; margin-right: 8px; font-size: 12px; border: 1px solid #8B7355; background: #D4C4A8; color: #5D4E37;">▶️</button>
        <div style="display: inline-block; width: 120px; height: 6px; background-color: #D4C4A8; border-radius: 3px; vertical-align: middle;">
            <div id="progress" style="height: 100%; background-color: #8B7355; border-radius: 3px; width: 0%; transition: width 0.1s;"></div>
        </div>
    </div>
    <span style="color: #8B7355; font-style: italic;">{{{2|Audio File}}}</span>
</div>
</html></includeonly>

Latest revision as of 20:23, 23 July 2025