在鼠标上播放声音

时间:2014-04-07 12:11:17

标签: javascript jquery audio

我准备在鼠标悬停的链接上添加声音,然后鼠标停止,当它再次悬停时,声音将开始播放。

我即将把它放在链接上,但我不确定的是如何在我的链接上添加一个功能:

我做的第一件事是我使用javascript在每个链接上添加了一个音频。

$('<audio src="http://audiopath/kiss.ogg" id="mySound"></audio>').appendTo('a');

然后我添加了一个函数,它将播放鼠标上的音频,我只是从另一篇文章中获取。

function PlaySound(soundobj) {
    var thissound=document.getElementById(soundobj);
    thissound.play();
};

function StopSound(soundobj) {
    var thissound=document.getElementById(soundobj);
    thissound.pause();
    thissound.currentTime = 0;
};

我试图添加一个函数这些链接,但我有错误。我只是从其他帖子中读到它可以使用attr进行插入。

$('a').onmouseover(function(){
    $(this).attr('PlaySound', ('mySound'));
});

$('a').onmouseout(function(){
    $(this).attr('StopSound', ('mySound'));
});

我正在实现这样的输出:

<a onmouseover="PlaySound('mySound')" onmouseout="StopSound('mySound')" href="#">Hover Over Me To Play</a>

请帮助伙伴.....

2 个答案:

答案 0 :(得分:0)

试试这个,

$('a').hover(function(){
    PlaySound('mySound');// calling playsound function
},function(){
    StopSound('mySound');// calling stopsound function
});

并更改您的anchor tag喜欢,

<a href="#">Hover Over Me To Play</a>

答案 1 :(得分:0)

更改为:

$('a').on('mouseover', function(){
    $(this).attr('PlaySound', ('mySound'));
});

$('a').on('mouseout', function(){
    $(this).attr('StopSound', ('mySound'));
});

如果它不起作用,您可以尝试mouseenter而不是鼠标悬停(请参阅the difference)。 mouseleave与鼠标输出相同