簡體   English   中英

MouseOver音效,比這更好的方法

[英]MouseOver sound effect, a Better way than this

我需要在鼠標懸停事件上發出聲音,我有這種方式,但是它的問題來自鼠標懸停和播放聲音之間的延遲,這是由於(我認為)代碼中嵌入了聲音。 我想知道是否有使用js / jquery的更好方法。 但不是我不想在這種特殊情況下實現的新html5音頻標簽。

一個ajax調用會加載文件,然后將其附加到鼠標上一個名為playSound()的函數

function playSound()
{ 
  $setSound = document.getElementById("soundWrapper").innerHTML="<embed id='sound' src='href' type=audio/mpeg hidden=false autostart=true volume=12>";
}

然后對mouseOut事件調用一個名為stopSound()的函數

function stopSound()
{
  $stopSound = document.getElementById("soundWrapper").innerHTML="";
}

沒什么,但是它確實有效。 據說問題是播放聲音的延遲。 有沒有一種方法可以播放/停止已經嵌入的聲音,而不僅僅是每次都嵌入一個新聲音或類似的東西?

感謝您的時間和幫助。 問候。

如果您讓AJAX將音頻標簽( http://www.w3schools.com/tags/tag_audio.asp )加載到所需的位置,則可以使用JS中的.play()方法播放它。 然后變得非常容易

$(YOURMOUSEOVERELEMENT).on('mouseover', function(){$('#sound').play()});

然后,如果要在鼠標離開時停止音頻:

$(YOURMOUSEOVERELEMENT).on('mouseout', function(){$('#sound').stop()});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM