使用js更改图标

东方的

我有一个图标,play/pause当我点击时play,我可以看到pause,但是我有很多带有音频的块,在我的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;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Java mouseClicked事件处理程序更改图标

来自分类Dev

jQuery Ui Datepicker更改图标

来自分类Dev

从FontAwesome更改图标的颜色?

来自分类Dev

更改图标就可以点击?

来自分类Dev

如何使用angularjs和Google Maps更改图标标记

来自分类Dev

如何使用CSS更改图标颜色

来自分类Dev

鼠标悬停时更改图标

来自分类Dev

在Android通知中动态更改图标

来自分类Dev

单击jstree更改图标

来自分类Dev

materializeCSS可折叠活动更改图标。

来自分类Dev

编译后更改图标(Python)

来自分类Dev

使用font-awesome和CSS,是否可以通过CSS更改来更改图标?

来自分类Dev

引导Glyphicons datetimepicker更改图标

来自分类Dev

单击时更改图标

来自分类Dev

在Flask / Dash中更改图标

来自分类Dev

在For循环中更改图标类型

来自分类Dev

单击后更改图标

来自分类Dev

根据布尔变量更改图标

来自分类Dev

TabbedPage更改图标

来自分类Dev

更改图标颜色的方法是什么

来自分类Dev

按下按钮时更改图标

来自分类Dev

如何更改图标的颜色?

来自分类Dev

Imageviewer更新不更改图标

来自分类Dev

如何使用angularjs和Google Maps更改图标标记

来自分类Dev

使用font-awesome和CSS,是否可以通过CSS更改来更改图标?

来自分类Dev

使用app.directive AngularJS更改图标

来自分类Dev

在Google Maps中使用“ if”语句更改图标

来自分类Dev

在AJAX结果上使用jquery更改图标

来自分类Dev

Bootstrap 折叠更改图标