gpt4 book ai didi

javascript - 使用js更改图标

转载 作者:行者123 更新时间:2023-11-28 00:17:04 25 4
gpt4 key购买 nike

我有一个图标 play/pause 当我点击 play 时,我可以看到 pause,但是我有很多带有音频的 block 我的 js 代码 我只能更改第一个图标(从 playpause)。我怎样才能将其添加到页面上的所有音频元素?

let playIcon = "https://image.flaticon.com/icons/svg/149/149668.svg";
let pauseIcon = "https://image.flaticon.com/icons/svg/149/149670.svg";

function togglePlay(video) {
var audio = document.getElementsByTagName("audio")[0];
if (!audio)
return;
audio.paused ? audio.play() : audio.pause();
document.getElementById("button").src = audio.paused ? playIcon : pauseIcon;
}
#button {
width: 50px;
display: block;
}
<div class="player" onclick="togglePlay(this)">
<img src="https://image.flaticon.com/icons/svg/149/149668.svg" id="button">
<audio>
<source src="https://ccrma.stanford.edu/~jos/mp3/bachfugue.mp3" />
</audio>
</div>

最佳答案

不要使用ID来获取按钮,而是相对于调用该函数的元素来访问它。试试这个功能。

function togglePlay(elm) {
var audio = elm.querySelector('audio');
if(!audio) return;

audio.paused ? audio.play() : audio.pause();
elm.querySelector('img').src = audio.paused ? playIcon : pauseIcon;
}

关于javascript - 使用js更改图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55046892/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com