音频标签HTML5
Audio Tag HTML5
我用HTML,CSS &JS .
我用任意歌曲解析一个url的xml文件,然后用这些歌曲安装一个播放器。
我为JS编写了以下代码来更改歌曲:
var newSongHtml = '<div class="navbar-header" id="playersongs">';
newSongHtml += ' <h3>' + nombreChannelActual + ' - ' + categoriaActual + '</h3>';
newSongHtml += '<div class="audio-player">';
newSongHtml += ' <h2>' + currentSongName + '</h2>';
newSongHtml += '<audio id="audio-player" src="' + currentSong + '" type="audio/mp3" ontimeupdate="onTimeUpdateCurrentSong(''' + currentPlayList + ''')" onended="changeCurrentSong(''' + currentPlayList + ''');" onerror="checkErrorWhenWillPlaySong(''' + currentPlayList + ''')" controls="controls"></audio>';
newSongHtml += '</div>';
newSongHtml += '</div>';
$('#playersongs').replaceWith(newSongHtml);
$('#audio-player').mediaelementplayer({
alwaysShowControls: true,
features: ['playpause','progress','currenttime','duration'],
audioWidth: 450,
audioHeight: 40,
iPadUseNativeControls: false,
iPhoneUseNativeControls: false,
AndroidUseNativeControls: false
});`
我的问题是:当我弹了很长时间,换了几首歌的时候。无论我做什么,玩家都会停止,崩溃,玩家不会运行,进入永远停止的状态。我在开发人员工具中看到有一个名为media的文件夹,其中存储文件PART_32435435.mp3
我想可能是这样,因为控制台没有告诉我任何错误
这可能就是问题所在吗?我怎样才能删除它呢?
是因为歌名中有一个单引号吗?这可能会破坏脚本,你有src="' + currentSong + '"
,除非它被转义到某个地方。我用在文件名中包含一个单引号的第二首歌测试了这一点,它有效…
<div id="playersongs"></div>
<script>
var nombreChannelActual = "nombreChannelActual";
var categoriaActual = "categoriaActual";
var currentPlayList = ["Michael Jackson - Remember The Time.mp3","Michael Jackson - Can't Let Her Get Away.mp3","Michael Jackson - Dangerous.mp3"];
var currentSongName = currentPlayList[0].split('.')[0];
var currentSong = currentPlayList[0];
function onTimeUpdateCurrentSong(a){
//console.log("!");
}
function canplay(){
//play when buffered enough to begin
$('audio').on('canplay', function() {
this.play();
});
}
function changeCurrentSong(){
var current_song = $('#audio-player').attr("src");
var current_song_position = currentPlayList.indexOf(current_song);
if(current_song_position == currentPlayList.length-1){
//it has reached the end, go back to first song
$('#audio-player').attr("src",currentPlayList[0]);
$('#current_song_name').html(currentPlayList[0].split('.')[0]);
canplay();
}
else {
//play next song
$('#audio-player').attr("src",currentPlayList[current_song_position+1]);
$('#current_song_name').html(currentPlayList[current_song_position+1].split('.')[0]);
canplay();
}
}
var newSongHtml = '<div class="navbar-header" id="playersongs">';
newSongHtml += ' <h3>' + nombreChannelActual + ' - ' + categoriaActual + '</h3>';
newSongHtml += '<div class="audio-player">';
newSongHtml += " <h2 id='current_song_name'>" + currentSongName + "</h2>";
newSongHtml += "<audio id='audio-player' src='" + currentSong + "' type='audio/mp3' onended='changeCurrentSong();' controls='controls' autoplay></audio>";
newSongHtml += '</div>';
newSongHtml += '</div>';
$('#playersongs').replaceWith(newSongHtml);
</script>
相关文章:
- 可以使用带有json回调的html5视频标签
- HTML5在提交并显示所需标签后显示隐藏的表单元素
- Shoutcast流url在html5音频标签中不起作用
- 如何在HTML5/Java脚本的Teechart中使Axis标签美观
- 删除对HTML5视频标签的控件(播放,暂停等)
- JS中的HTML5视频标签错误检测
- HTML5视频标签 - 如何设置封面背景大小
- 如何使用javascript从具有html5<嵌入>标签
- HTML5音频标签,其中可以下载
- 是否有任何方法可以像HTML5<p>标签
- HTML5音频标签没有播放声音的铬和safari中的第一个未聚焦标签
- 可以'不要让HTML5音频标签在移动浏览器上工作
- Zend Form 1.x使用html5数据列表标签
- 我在 html5 音频标签中播放音频时收到 [对象媒体错误]
- 以 MVVM 方式处理 html5 视频标签的正确方法是什么?
- 如何为 html5 标签创建新属性
- 修复了在页面底部加载时html5标签IE8不工作的问题
- Backbone.js IE8没有设置HTML5标签名的样式
- 从音频html5标签下载
- 如何在支持渐进式增强(Progressive Enhancement)的同时,使用HTML5标签来支持无脚本客户端,这些