嵌入音频文件的最佳做法是什么? (<embed> vs. <object> vs. Flash vs. <audio>)
9 回答
90
此解决方案适用于几乎所有浏览器(即使没有安装 Flash):
<!doctype html>
<html>
<head>
<title>Audio test</title>
<script>
/**
* Plays a sound using the HTML5 audio tag. Provide mp3 and ogg files for best browser support.
* @param {string} filename The name of the file. Omit the ending!
*/
function playSound(filename){
var mp3Source = '<source src="' + filename + '.mp3" type="audio/mpeg">';
var oggSource = '<source src="' + filename + '.ogg" type="audio/ogg">';
var embedSource = '<embed hidden="true" autostart="true" loop="false" src="' + filename +'.mp3">';
document.getElementById("sound").innerHTML='<audio autoplay="autoplay">' + mp3Source + oggSource + embedSource + '</audio>';
}
</script>
</head>
<body>
<!-- Will try to play bing.mp3 or bing.ogg (depends on browser compatibility) -->
<button onclick="playSound('bing');">Play</button>
<div id="sound"></div>
</body>
</html>
var audio = new Audio('audio_file.mp3');
function post()
{
var tval=document.getElementById("mess").value;
var inhtml=document.getElementById("chat_div");
inhtml.innerHTML=inhtml.innerHTML+"<p class='me'>Me:-"+tval+"</p>";
inhtml.innerHTML=inhtml.innerHTML+"<p class='demo'>Demo:-Hi! how are you</p>";
audio.play();
}
9 回答
此解决方案适用于几乎所有浏览器(即使没有安装 Flash):
浏览器支持
<audio>(现代浏览器)
<embed>(后备)
使用的代码
适用于 Chrome,Safari 和 Internet Explorer 的 MP3。
适用于 Firefox 和 Opera 的 OGG。
截至 2016 年,以下内容就足够了(您甚至不需要嵌入):
查看更多这里。
还有一个插件,用于在网站上播放通知声音:Ion.Sound
基本演示
高级演示
Ion.Sound GitHub
好处:
JavaScript-plugin 用于播放基于 Web Audio API 的声音,并回退到 HTML5 音频。
插件适用于大多数流行的桌面和移动浏览器,可以在任何地方使用,从常见的网站到浏览器游戏。
Audio-sprites 支持包括在内。
没有任何依赖(不需要 jQuery)。
包括 25 free 声音。
设置插件:
雅虎的媒体播放器怎么样只是嵌入了雅虎的图书馆
并使用它
自动启动
播放跨浏览器兼容的通知
正如这个帖子所述 by_3_Tisdall,检查Howler.js插件。
像 chrome 这样的浏览器在最小化时禁用
javascript
执行,或者在性能改进时禁用。但即使浏览器处于非活动状态或用户最小化,这也会播放通知声音。希望帮助某人。
使用audio.js这是
<audio>
标签的 polyfill,后备闪存。通常,查看https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills以获取 HTML 5 API 的 polyfills ..(它包含更多
<audio>
polyfills)此代码来自 talkerscode 完整教程访问http://talkerscode.com/webtricks/play-sound-on-notification-using-javascript-and-php.php
我们可以像以下一样使用音频和对象:
甚至为
play
和ended
添加addEventListener
我写了一个清晰的播放声音的功能方法: