javascript - 使用原始 JavaScript 将音频添加到购物车
问题描述
我的选择到底有什么问题?
<a href="#" class="button-4 w-button"></a>
<audio id="cart_add_sound" controls="" preload="auto" hidden="hidden"> <source src="img/cart_add.wav"
type="audio/wav"> </audio>
- 创建一个函数
- 定位类
button-4
- 将一个均匀的监听器附加到鼠标点击
- 并播放 id 为的音频
cart_add_sound
// Play Audio on Add to Cart
function playAudio() {
var play = document.querySelector('.button-4')
play.addEventListener('click', function() {
document.getElementById('cart_add_sound').play();
}, true);
}
我知道我可以在 html5 内部使用,onclick="audio.play()"
但我想以这种方式接近它以用于学习目的。
解决方案
我通过使用getElementsByClassName
和循环所有元素来修复它。
// Play Audio on Add to Cart
function playAudio() {
var plays = document.getElementsByClassName('button-4')
for (var i = 0; i < plays.length; i++) {
var play = plays[i]
play.addEventListener('click', function() {
document.getElementById('cart_add_sound').play();
}, true);
}
}
推荐阅读
- python-3.x - 如何解决 OperationalError:靠近“(”:sqldf python 中的语法错误?
- c# - 如何为 SonarQube 添加覆盖范围?
- react-native - 如何过滤领域中的对象?
- node.js - 构建 gradle 项目时出现以下错误
- jquery - 为什么当 Jquery toggle() 并显示时链接不可点击?
- asp.net-mvc - 提交无效模型后将多选的选定值从控制器设置为视图
- r - 根据唯一列值计算变量组合
- dropbox - 无法在 Centos 8 上安装 nautilus-dropbox
- histogram - 在 grafana 中显示每小时平均值(直方图)
- twincat - 如何连接到倍福 CB3263?