阻止嵌入的 Javascript 歌曲在 Chrome 上自动播放?

Posted

技术标签:

【中文标题】阻止嵌入的 Javascript 歌曲在 Chrome 上自动播放?【英文标题】:Stop embedded Javascript song from autplaying on Chrome? 【发布时间】:2016-04-14 07:33:45 【问题描述】:

我有以下行:

<embed src="/sounds/move.wav" autostart="0" width=0 height=0 id="move_sound" enablejavascript=true>

无论我使用什么参数(自动播放等),它都会在 Chrome 上自动播放歌曲。

有人知道如何阻止它播放吗?

编辑:和上面的不一样,我只处理嵌入标签而不是视频标签。

【问题讨论】:

html embed autoplay="false", but still plays automatically的可能重复 如果 autostart 属性存在,无论它里面的什么都将被设置为 true。只需删除该属性。 autostart 不是HTML5's &lt;embed&gt;element's attributes 的一部分。 @jcubic 试图删除它,没有雪茄 【参考方案1】:

尝试使用audio 标签:

<audio src="/sounds/move.wav">
  Your browser does not support the <code>audio</code> element.
</audio>

这个标签不会自动播放声音。

【讨论】:

【参考方案2】:

您可以将src 设置为空字符串

var embed = document.getElementById("move_sound");
var audio = embed.src; // save `src`
embed.src = "";

【讨论】:

【参考方案3】:

不太确定,但也许您可以停止播放音频。使用每次切换 src 时调用的函数? http://www.w3schools.com/tags/av_prop_currenttime.asp 像这样?

function start()    
var embed = document.getElementById("move_sound");
    //load the video etc.
    embed.currentTime = 0;
    embed.pause(); 

   

function playPause()  
    if (embed.paused) 
        embed.play(); 
    else 
        embed.pause(); 

【讨论】:

以上是关于阻止嵌入的 Javascript 歌曲在 Chrome 上自动播放?的主要内容,如果未能解决你的问题,请参考以下文章

在不带文件的 HTML 中嵌入歌曲

JavaScript中的手动文件缓存

Gmail 阻止电子邮件模板中嵌入的小型嵌入式图像

如何获取光标:嵌入对象上的指针?

YouTube API 音量控制

阻止 URL 包含嵌入凭据的子资源请求的解决方案