Как по клику убрать/добавить атрибут “muted” в <video>

347
07 марта 2018, 09:28

Написал вот такой код. Не работает. Подскажите что исправить.

var video = document.getElementById("video"); 
var volume = document.getElementById("volume"); 
 
volume.onclick = function() { 
  if (video.hasAttribute('muted')) { 
    video.removeAttribute('muted'); 
  } else { 
    video.addAttribute('muted'); 
  } 
};
<video id="video" autoplay loop muted> 
  <source src="img/video.mp4" type="video/webm" /> 
</video> 
<button id="volume">Звук</button>

Answer 1

var video = document.getElementById("video"); 
var volume = document.getElementById("volume"); 
 
volume.addEventListener('click', function() { 
    video.muted = (video.muted == false) ? true : false; 
});

Answer 2

Атрибут muted является логическим атрибутом. Достаточно сделать так:

volume.addEventListener('click', function () {
    video.muted = !video.muted;         
})
READ ALSO
Ionic, как принять push в открытом приложении на iOS?

Ionic, как принять push в открытом приложении на iOS?

Есть приложение на ionic 3, подключил push сообщения, на android все работает отлично как в открытом приложении так и в свернутом видено на iOS пуши...

352
Как запустить Opera через Selenium Webdriver на Javascript?

Как запустить Opera через Selenium Webdriver на Javascript?

Собственно, вопрос в топикеПробовал заменить все chrome на opera в шаблоне на Хром, но кажется нюанс в том чтобы указать Binary

308
Как подключить свой JavaScript к чужому сайту?

Как подключить свой JavaScript к чужому сайту?

У меня нестандартная задачаВопрос: Как подключить к сайту свой JavaScript ?

287