【发布时间】:2014-06-10 18:19:23
【问题描述】:
我将图像和音频文件存储在我的服务器上的一个目录中,并将文件名存储在我的数据库表中。
我希望在用户单击与音频文件关联的图像时播放和暂停音频文件,因此我在图像上创建了“播放和暂停”切换。
我遇到的问题是,当我使用切换时,它会在每张图像上播放相同的音频文件。它不是播放与图像关联的音频文件,而是播放 DESC 列表中的第一个文件。
示例:
- 图片 1:播放音频 1
- 图片 2:播放音频 1
- 图 3:播放音频 1
这是我的 php 代码:
$ringtones = DB::getInstance()->query("SELECT `ring_id`,`creation`,`ring_name`,`category_id`,`ring_path`, `rt_file` FROM `ringtones` WHERE category_id = 2 ORDER BY `ring_id` DESC ");
foreach($ringtones->results() as $rt){ ?>
<li <?php echo escape($rt->ring_id); ?>>
<a class="mytoggle" style="cursor:pointer;">
<img src="ringtones/rtimage/<?php echo ($rt->rt_file);?>" class="max-img-rt"></a>
<audio id="playaudio">
<source src="ringtones/<?php echo ($rt->ring_path);?>">
</audio>
</li>
<?php } ?>
还有我的 JS:
$('.mytoggle').toggle(
function () {
document.getElementById('playaudio').pause();
},
function () {
document.getElementById('playaudio').play();
}
);
我不明白为什么它不会这样播放:
- 图片 1:播放音频 1
- 图片 2:播放音频 2
- 图 3:播放音频 3
【问题讨论】:
-
如果您有多个带有
id='playaudio'的元素,document.getElementById('playaudio')会指向什么?第一个。
标签: javascript php jquery audio