在jquery mobile中怎么添加背景音乐

在jquery mobile中怎么添加背景音乐,第1张

在手机里实现音乐的播放,可以通过<audio>标签来实现。至于页面切换后DIV音乐消失,可以通过JS来控制,例如:

audio = document.getElementById('audio')

audio.pause()

用法:

添加音频元素、 设置的属性,你需要和添加源。您将添加更多不同的来源,更多的用户将能够听听您的音频 (因为没有一个音频格式跨所有浏览器支持)。三个例子:

<audio src="audio.wav" preload="auto" controls></audio>

这只是将预加载audio.wav文件并不会发挥它直到用户单击播放按钮。nonemetadata) 的其他preload值将不预加载该文件。

autoplay时它会加载该文件,然后再loop它以这种方式:

指定多个音频格式来解决前面提到的问题:

<audio preload="auto" controls>

<source src="audio.wav" />

<source src="audio.mp3" />

<source src="audio.ogg" />

</audio>

神秘controls吗?它是一个布尔属性不会影响任何方式中的插件,但可确保该浏览器的默认播放器是显示和禁用 JavaScript 时显示控件与控件。

最后一步 ― 调用插件

<audio src="audio.wav" preload="auto" controls></audio>

<script src="jquery.js"></script>

<script src="audioplayer.js"></script>

<script>

$( function()

{

$( 'audio' ).audioPlayer()

})

</script>

该插件,一些可选的参数。最重要的一个被称为classPrefix。传递的值成为子元素的父元素和类名称前缀的类名称。其他选项只可能有利英语以外的语言。具有默认值的示例:

$( 'audio' ).audioPlayer(

{

classPrefix: 'audioplayer',

strPlay: 'Play',

strPause: 'Pause',

strVolume: 'Volume'

})

有一些类的名称,被分配到父元素时:

音乐播放器版本― ― 正在播放音频

<div class="audioplayer audioplayer-playing">

停止停止音乐播放器版本― ― 音频

<div class="audioplayer audioplayer-stopped">

音乐播放器版本静音― ― 卷处于静音状态

<div class="audioplayer audioplayer-muted">

音乐播放器版本 novolume ― ― 没有音量调节是可用的:

<div class="audioplayer audioplayer-novolume">

重要提示:时不支持音频元素或没有任何给定的音频文件是与浏览器兼容,玩家切换到迷你模式,基本上减少了播放机播放/暂停按钮 (因为"嵌入"元素是有限的 *** 作):

<div class="audioplayer audioplayer-stopped audioplayer-mini">

<embed src="audio.wav" width="0" height="0" volume="100" autostart="false" loop="false" />

<div class="audioplayer-playpause" title="Play"><a href="#">Play</a></div>

</div>

jquery控制背景音乐开关与自动播放提示音的方法。分享给大家供大家参考。具体如下:

很多人初学网页制作时在网页中加入一段背景音乐,听到音乐响起的那一刻往往都会有一丝的成就感。

这里就为大家讲解如何使用js控制背景音乐播放与停止。具体如下:

一、jquery控制背景音乐开关

复制代码 代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http//www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html xmlns="http//www.w3.org/1999/xhtml" xml:lang="en" >

<head>

<script src="js/jquery.min.js"></script>

<script type="text/javascript">

//加载背景音乐,并自动播放

$('#bg_music').append('<embed id="m_bg_music" loop=true volume="60" autostart=true hidden=true src="guoan.mp3" />')

$('#bg_music_btn').click(function(){

var state = $('#bg_music_btn').attr('state')

if(state == '1')//

{

$('#bg_music_btn').attr('state','0')

$('#bg_music_btn').html('打开背景音乐')

$('#m_bg_music').remove()

}else if(state == '0')

{

$('#bg_music_btn').attr('state','1')

$('#m_bg_music').remove()

$('#bg_music_btn').html('关闭背景音乐')

$('#bg_music').append('<embed id="m_bg_music" loop=true volume="60" autostart=true hidden=true src="guoan.mp3" />')

}

})

</script>

</head>

<body>

<!--控制播放-->

<div id="bg_music_btn" state='1'>关闭背景音乐</div>

<!--背景音乐-->

<div id="bg_music"></div>

</body>

</html>

以上介绍了jquery如何控制背景音乐开关的方法,接下来再进一步扩展。

二、JQuery自动播放提示音

最早对网站有自动提示音的功能,发现在Discuz论坛中出现。但是它有一个问题就是只支持flash,不支持HTML5,不明确最新版本中是否支持HTML5。

对于Discuz 7.2 版本中,提供了player.swf、pm_1.mp3、pm_2.mp3、pm_3.mp3,然后使用如下脚本来实现:

复制代码 代码如下:

<div id="soundplayerlayer" style="position:absolutetop:-100000px"></div>

<script type="text/javascript" reload="1">

function soundplayer(file) {

$('soundplayerlayer').innerHTML = AC_FL_RunContent('id', 'pmsoundplayer', 'name', 'pmsoundplayer', 'width', '0′, 'height', '0′, 'src', '{$boardurl}images/sound/player.swf', 'FlashVars', 'sFile={$boardurl}images/sound/pm_' + file + '.mp3′, 'menu', 'false', 'allowScriptAccess', 'sameDomain', 'swLiveConnect', 'true')

}

</script>

可惜这个方法局限在flash,在苹果设备上可能就会遇到麻烦了。

HTML5开源播放器JPlayer支持自动播放提示音

JPlayer支持play事件触发自动播放提示音。

1. 装载JPlayer到一个div层,例如#jplayer。

复制代码 代码如下:

$(function() {

$("#jplayer").jPlayer({

swfPath: "http//www.jplayer.org/latest/js/Jplayer.swf",

ready: function () {

$(this).jPlayer("setMedia", {

mp3: "./resources/message.mp3"

})

},

supplied: "mp3"

})

})

body部分加入:<div id="jplayer"></div>

装载JQuery完成后,jplayer的div内容在支持swf的浏览器内变成:

复制代码 代码如下:

<div id="jplayer" style="width: 0pxheight: 0px"><img id="jp_poster_0" style="width: 0pxheight: 0pxdisplay: none"><object height="1" width="1" id="jp_flash_0" data="http//www.jplayer.org/latest/js/Jplayer.swf" type="application/x-shockwave-flash" style="width: 0pxheight: 0px"><param name="flashvars" value="jQuery=jQuery&id=jplayer&vol=0.8&muted=false"><param name="allowscriptaccess" value="always"><param name="bgcolor" value="#000000"><param name="wmode" value="opaque"></object></div>

在支持HTML5的浏览器内变成:

复制代码 代码如下:

<div id="jplayer" style="width: 0pxheight: 0px"><img id="jp_poster_0" style="width: 0pxheight: 0pxdisplay: none"><audio id="jp_audio_0" preload="metadata" src="./resources/message.mp3"></audio></div>

完成装载后就是触发播放的事件了。

2. 触发播放提示音事件

复制代码 代码如下:

$("#jplayer").jPlayer('play')

3. 循环播放函数,每5秒播放一次提示音

复制代码 代码如下:

function PlaySound() {

$("#jplayer").jPlayer('play')

setInterval("PlaySound()", 5000)

return true

}

附录:

1. 解决无法自动播放提示音的问题

如果在加载JQplayer后,立刻运行播放的触发事件,没有任何效果!具体是什么原因我也不太清楚,估计是因为音频文件没有加载上。

2. 解决方法是让触发事件等待5秒中执行。

复制代码 代码如下:

setTimeout("$('#jplayer').jPlayer('play')", 5000)

加载完页面,5秒后自动播放提示音。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11682837.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存