1

通过这里的信息:http ://forums.blackmesasource.com/showthread.php?t=13235

我正在尝试在导航链接中悬停时播放音频文件。快速移动链接时播放音频文件的问题在于,它会在再次播放之前播放整个文件,导致在链接上快速悬停时音频有所延迟。

上面链接中该问题的解决方案是添加 load();

到目前为止,这是我的 jQuery 代码:

<script type="text/javascript">
    $("nav ul li").hover(function(){
        nav_audio.play();
        },
    function(){
        nav_audio.load();
    });
</script>

我的 HTML5 代码:

<audio id="nav_audio">
    <source src="nav.mp3" type="audio/mpeg"></source>
    <source src="nav.ogg" type="audio/ogg"></source>
</audio>

悬停时不会播放音频,浏览器控制台(Chrome)中也不会显示错误。

知道我做错了什么,或者为什么它不起作用?我已经链接到 jQuery 文件,并且音频标签可以工作,因为它们在没有 jQuery 的其他地方使用。我只能猜测这里的问题出在 jQuery 上。

4

2 回答 2

2

我想到了。它需要文档准备功能。因此,脚本稍作更改:

<script type="text/javascript">
$(document).ready(function(){
    $("nav ul li").hover(function(){
        nav_audio.play();
        },
    function(){
        nav_audio.load();
    });
});
</script>
于 2013-02-22T01:51:56.553 回答
1
    $(document).ready(function() {
     var audioElement = document.createElement('audio');
     audioElement.setAttribute('src', 'audio.mp3');
     audioElement.setAttribute('autoplay', 'autoplay');
     $.get();
     audioElement.addEventListener("load", function() {
     audioElement.play();
    }, true);




    $('.play').on('hover',function(event) {
       audioElement.play();
    }); 

    $('play)..unbind("mouseleave");

});

于 2013-02-21T19:58:45.627 回答