2011-07-11 74 views
5

Tôi đang hoàn tất phiên bản đầu tiên của ứng dụng javascript của mình và tôi muốn thêm hiệu ứng âm thanh. Cách được khuyến nghị để phát âm thanh ngắn (định dạng mp3 hoặc wav hoặc định dạng khác) bằng cách sử dụng javascript trong trình duyệt web là gì? Tôi có mười âm thanh mà tôi muốn được tải trước và có thể chơi trong khi thực hiện ứng dụng.Làm cách nào để phát hiệu ứng âm thanh ngắn trong ứng dụng javascript?

Tôi đã tạo ứng dụng thử nghiệm nhỏ này và không thể phát âm thanh. Có thể ai đó có thể cho tôi biết tôi đang đi sai:

<html> 
<head> 
    <title>Sound Test</title> 
    <script type="text/javascript" src="raphael.js"></script> 
</head> 
<body> 
    <div id="debugPane" style="width: 300px; height: 500px; float: left; background-color: #EEEEEE; margin-left: 10px; border-style: solid; border-width: 1px;"></div> 
    <script type="text/javascript"> 
     try { 
      var snd = new Audio("mp3/1.mp3"); 
      alert(snd.src); 
      snd.play(); 
     } catch (err) { 
      document.getElementById("debugPane").innerHTML += "" + err.message; 
     } 
    </script> 
</body> 
</html> 

Tệp chính xác đang được chọn. Tuy nhiên, khi tôi trỏ đến một tệp không tồn tại, tôi không nhận được bất kỳ ngoại lệ nào. Các tập tin vui vẻ báo cáo những gì src của nó là mặc dù nó không thực sự trên hệ thống tập tin của tôi.

+0

Bạn muốn hỗ trợ trình duyệt nào? – alex

+0

Tôi không quan tâm đến các trình duyệt cũ hơn :) – nfw

+0

Có thể trùng lặp: http://stackoverflow.com/questions/10105063/how-to-play-a-notification-sound-on-websites?rq=1 –

Trả lời

0

Ứng dụng này đã hoạt động toàn bộ thời gian trong Chrome và Safari trong Windows và Mac. Hộp dev của tôi là môi trường Chromium/Ubuntu, không được hỗ trợ hoặc âm thanh của tôi bị định cấu hình sai. Trong thực tế, nó không hoạt động trong Ubuntu với bất kỳ trình duyệt nào cho đến nay.

0
function playSound(soundfile) { 
document.getElementById("dummy").innerHTML = 
"<embed src='"+soundfile+"' hidden='true' autostart='true' loop='false' />"; 
} 

trong đó dummy là div ẩn ở đâu đó trên trang của bạn.

Các vấn đề liên quan