javascript - 使用 Javascript 播放音频
问题描述
一旦用户点击使用 JavaScript 的按钮,我就会尝试播放音频。我正在循环访问数据库以使用 PHP 获取音频文件,但是每当我单击播放按钮时,它都会播放存储在数据库中的第一个音频,即使我单击了其他已循环并显示的音频,它仍然会播放数据库中的第一个音频。
我究竟做错了什么?
这是我的代码:
<div class="ms_weekly_wrapper" id="wrapper">
<div class="ms_weekly_inner" id='player'>
<?php
require '../db.php';
$sql = "select * from top15";
$sql_query = mysqli_query($con, $sql);
$i = 1;
while ($row = mysqli_fetch_array($sql_query)) {
echo '<audio id="music_player">';
echo "<source src='../Admin/Song/songAudio/" . $row['song_audio'] . "'/>";
echo '</source>';
echo '</audio>';
echo ' <input type="image" src="images/play.png" onclick="play_aud()" id="play_button">';
echo '<div class="ms_divider"></div>';
}
?>
</div>
</div>
这是负责播放音频文件的 JavaScript
document.addEventListener("DOMContentLoaded", function () {
startplayer();
}, false);
var player;
function startplayer() {
player = document.getElementById('music_player');
player.controls = false;
}
function play_aud() {
player.play();
}
这是我尝试做的
<audio id="<? php echo $audio_Id? >";
然后是 JavaScript
var id = "<? php echo $audio_Id? >";
player = document.getElementById(id);
但它不工作
解决方案
推荐阅读
- r - 警告:错误
:服务器拒绝您更改到闪亮的给定目录 - tensorflow - 是否可以使用 tensorflow 创建智能聊天机器人?
- javascript - 未捕获的错误:[vuex] getter 应该是函数,但“getters.default”是 {}
- javascript - 将数据从 firebase 异步加载到嵌入了 yandex 地图的 HTML 页面
- java - 在房间数据库MVVM中按类别生成子类别列表
- objective-c - 如何从 Cocoa 的中心点顺时针旋转 NSButton?
- bash - 将 docker-compose 文件转换为 bash 以自动运行测试
- mysql - Mysql 时间格式 Ymd H:i:s 未按预期工作
- javascript - 选择项目时自动关闭导航
- mysql - 如何在mysql数据库中插入不带减号的负值?