Javascript 使用js暂停Youtube iframe
我想创建一个按钮,暂停自动播放的youtube视频 这是iframe:Javascript 使用js暂停Youtube iframe,javascript,html,Javascript,Html,我想创建一个按钮,暂停自动播放的youtube视频 这是iframe: <iframe id="music" width="0" height="0" src="https://www.youtube.com/embed/v_FucrYWy3k?rel=1&controls=0&showinfo=0&start=1&autoplay=1&enablejsapi=1" frameborder="0" allow="autopla
<iframe id="music" width="0" height="0" src="https://www.youtube.com/embed/v_FucrYWy3k?rel=1&controls=0&showinfo=0&start=1&autoplay=1&enablejsapi=1" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
我遗漏了什么?你最好使用youtube api
看来,对于当前的Youtube API,您需要做的不仅仅是将
enablejsapi
作为get参数添加到嵌入式应用程序中。实际上,您必须包含中的API脚本,并使用自定义方法。您可以查看下面的代码或运行此工作模式:
<iframe id="music" width="310" height="310" src="https://www.youtube.com/embed/v_FucrYWy3k?rel=1&controls=1&showinfo=0&start=1&autoplay=1&enablejsapi=1" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
<button id='button' type="button" name="button">mute</button>
都在文档中您在哪里定义
iframe
,为什么要调用getElementById('music')
,它是同一iframe上iframe的id?控制台中是否有错误?document.getElementById()
。。。首先,我想我需要使用document.getElementById,但这也不起作用…可能是@Ion的重复,但只是将其更改为document.getElementById()
。仍然不起作用。错误:script.js:110 Uncaught类型错误:myVideo.pauseVideo不是HTMLButtonElement.onclick(index.html:30)mute@script.js:110 onclick@index.html:30的mute(script.js:110)函数,只有链接的答案通常在堆栈溢出上。随着时间的推移,链接可能会萎缩,变得不可用,这意味着你的答案对未来的用户来说是无用的。如果你能在实际的帖子中提供你答案的一般细节,引用你的链接作为参考,那将是最好的。
function mute(){
var myVideo = document.getElementById('music');
myVideo.pauseVideo();
}
<iframe id="music" width="310" height="310" src="https://www.youtube.com/embed/v_FucrYWy3k?rel=1&controls=1&showinfo=0&start=1&autoplay=1&enablejsapi=1" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
<button id='button' type="button" name="button">mute</button>
//create the script for the API and append it to the DOM
var tag = document.createElement('script');
tag.src = 'https://www.youtube.com/iframe_api';
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
var player;
function onYouTubeIframeAPIReady() {
player = new YT.Player('music', {
events: {
'onReady': onPlayerReady
}
});
}
function onPlayerReady(event) {
document.getElementById('button').addEventListener('click', function() {
player.pauseVideo();
})
}