HTML 5中的音频播放器在Chrome中无法正常工作。(前进和后退播放)

时间:2014-04-22 14:46:01

标签: javascript jquery asp.net-mvc google-chrome html5-audio

我在使用chrome运行HTML5音频播放器时遇到问题。它在IE 9+和Firefox中运行良好。我已经编写了javascript函数,用于在F7和F7上转发和倒带音频播放器。 F8按键,它在IE和FF中表现不错,但由于某些原因它在Chrome中不起作用。以下是代码。

$(document).keydown(function (e) {

    if (e.keyCode == 118) { rewindAudio(); return false; }
    else if (e.keyCode == 119) { forwardAudio(); return false; }
} 

  // Rewinds the audio file by 30 seconds.        
    function rewindAudio() {            

        // Check for audio element support.
        if (window.HTMLAudioElement)
            {
               try {
                      var oAudio = audioPlayerInFocus[0]; 
                      oAudio.currentTime -= 1.0;
                }
               catch (e) {
                   // Fail silently but show in F12 developer tools console
                   if (window.console && console.error("Error:" + e));
                }
            }
      }

// Fast forwards the audio file by 1 seconds.
function forwardAudio() {

    // Check for audio element support.
    if (window.HTMLAudioElement) {
        try {
            var oAudio = audioPlayerInFocus[0
            oAudio.currentTime += 1.0;
        }
        catch (e) {
            // Fail silently but show in F12 developer tools console
            if (window.console && console.error("Error:" + e));
        }
    }
}

我怀疑当前时间在chrome中没有变化。是否存在任何语法错误或与浏览器相关的问题?请帮帮我。谢谢。

1 个答案:

答案 0 :(得分:0)

以下代码适用于我为我测试过的所有浏览器 - fiddle

<audio controls>
    <source src="sample/one.mp3" type="audio/mpeg">
</audio>

<script type="text/javascript">
$(document).on('keydown',function(e) {
if (e.keyCode == 82) { 
    console.log('r key = rewind');
    rewindAudio();
}
else if(e.keyCode == 70){
    console.log('f key = forward');
    forwardAudio();
}
});

function rewindAudio() {            
    console.log('rewindAudio');
    oAudio = $('audio')[0];
    oAudio.currentTime -= 1.0;   
}
function forwardAudio() {            
    console.log('forwardAudio');
    oAudio = $('audio')[0];
    oAudio.currentTime += 1.0;   
}
</script>

我读过有F7 key特定设计的人。

在旁注上检测HTML5音频支持我通常使用here中描述的功能。