2013-01-01 148 views
15

标题几乎说明了一切。我有一个视频在到达页面时自动开始播放。HTML5视频静音但仍然播放

在HTML代码中,我已经把静音=“静音”。这里出现了怪异的部分。当看着这些控制器时,它显然是静音的,但是音乐仍在播放并且可以被听到。即使当我查看W3School上的HTML5视频示例时,它也会在静音时播放音乐。

有什么办法,槽的jQuery例如绕过这个?我有一个jQuery线,它粘在视频上,但没有任何效果。

下面是HTML代码使用:

<video id="video" width="640px" height="350px" autoplay="autoplay" loop="loop" controls="controls" muted="muted"> 
      <source src="intouchables.f4v" type="video/mp4"> 
      Your browser does not support the video tag. 
     </video> 

希望你能帮助我。 jQuery的线路如下:

$( “视频”)丙( '静音',真)。

在此先感谢。

回答

18

我不能完全肯定,为什么当video标签中定义的属性muted出现故障。但是,这是你可以做什么:

首先,请从视频标签的muted="muted"属性。把它简单地称为:

<video id="video" width="640px" height="350px" autoplay="autoplay" loop="loop" controls="controls"> 
    <source src="intouchables.f4v" type="video/mp4"> 
    Your browser does not support the video tag. 
</video> 

现在,定义一个函数在页面加载,将视频静音。

window.onload = function() { 
    var element = document.getElementById('video'); 
    element.muted = "muted"; 
} 

我验证了这一点,它的工作原理。

+0

你是我的英雄,我可以验证工作。我会尝试报告错误。万分感谢! –

+9

我会建议使用'element.muted = true;'因为这实际上是一个布尔属性 - https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement –

3
<video preload= "true" autoplay = "autoplay" loop = "loop" muted> 
    <source src = "video/Real-Estate.mp4" type = "video/mp4"> 
</video> 
1

要通过HTML5静音,而不是直接的jQuery,您还可以在视频标签中使用volume="0",即:

<video preload="true" autoplay="" volume="0" poster="img/example.jpg"> 
+2

尝试'volume =“0” '在FF45中,它不起作用。 –

3

看起来是这样的静音停止在Chrome 64工作仍然工作在63。

+0

我也确认'muted'视频标签在Chrome 64中损坏。解决方法:如果视频元素放置在页面初始加载时呈现的页面上,它似乎仍然有效。您也可以直接使用JavaScript对元素应用静音。 请参阅:https://stackoverflow.com/questions/48629652/chrome-64-update-muted-tag-no-longer-working-in-video/48651746#48651746 – Ariella