- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想嵌入多个 youtube 音频,这样如果第一个音频正在播放,并且如果我想播放第二个音频,那么第二个音频将播放,第一个音频将自动停止,如果我想播放第三个音频,那么第二个音频将自动停止然后将播放第三个音频。
// 2. This code loads the IFrame Player API code asynchronously.
var tag = document.createElement('script');
tag.src = "https://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
// 3. This function creates an <iframe> (and YouTube player)
// after the API code downloads.
var player1, player2, player3, player4;
function onYouTubeIframeAPIReady() {
var ctrlq1 = document.getElementById("youtube-audio1");
ctrlq1.innerHTML = '<img id="youtube-icon1" src=""/><div id="youtube-player1"></div>';
ctrlq1.style.cssText = 'width:150px;margin:2em auto;cursor:pointer;cursor:hand;display:none';
ctrlq1.onclick = toggleAudio1;
player1 = new YT.Player('youtube-player1', {
height: '0',
width: '0',
videoId: ctrlq1.dataset.video,
playerVars: {
autoplay: ctrlq1.dataset.autoplay,
loop: ctrlq1.dataset.loop,
},
events: {
'onReady': onPlayerReady1,
'onStateChange': onPlayerStateChange1
}
});
var ctrlq2 = document.getElementById("youtube-audio2");
ctrlq2.innerHTML = '<img id="youtube-icon2" src=""/><div id="youtube-player2"></div>';
ctrlq2.style.cssText = 'width:150px;margin:2em auto;cursor:pointer;cursor:hand;display:none';
ctrlq2.onclick = toggleAudio2;
player2 = new YT.Player('youtube-player2', {
height: '0',
width: '0',
videoId: ctrlq2.dataset.video,
playerVars: {
autoplay: ctrlq2.dataset.autoplay,
loop: ctrlq2.dataset.loop,
},
events: {
'onReady': onPlayerReady2,
'onStateChange': onPlayerStateChange2
}
});
var ctrlq3 = document.getElementById("youtube-audio3");
ctrlq3.innerHTML = '<img id="youtube-icon3" src=""/><div id="youtube-player3"></div>';
ctrlq3.style.cssText = 'width:150px;margin:2em auto;cursor:pointer;cursor:hand;display:none';
ctrlq3.onclick = toggleAudio3;
player3 = new YT.Player('youtube-player3', {
height: '0',
width: '0',
videoId: ctrlq3.dataset.video,
playerVars: {
autoplay: ctrlq3.dataset.autoplay,
loop: ctrlq3.dataset.loop,
},
events: {
'onReady': onPlayerReady3,
'onStateChange': onPlayerStateChange3
}
});
var ctrlq4 = document.getElementById("youtube-audio4");
ctrlq4.innerHTML = '<img id="youtube-icon4" src=""/><div id="youtube-player4"></div>';
ctrlq4.style.cssText = 'width:150px;margin:2em auto;cursor:pointer;cursor:hand;display:none';
ctrlq4.onclick = toggleAudio4;
player4 = new YT.Player('youtube-player4', {
height: '0',
width: '0',
videoId: ctrlq4.dataset.video,
playerVars: {
autoplay: ctrlq4.dataset.autoplay,
loop: ctrlq4.dataset.loop,
},
events: {
'onReady': onPlayerReady4,
'onStateChange': onPlayerStateChange4
}
});
}
function togglePlayButton1(play) {
document.getElementById("youtube-icon1").src = play ? "https://i.imgur.com/IDzX9gL.png" : "https://i.imgur.com/quyUPXN.png";
}
function toggleAudio1() {
if ( player1.getPlayerState() == 1 || player1.getPlayerState() == 3 ) {
player1.pauseVideo();
togglePlayButton1(false);
} else {
player1.playVideo();
togglePlayButton1(true);
}
}
function togglePlayButton2(play) {
document.getElementById("youtube-icon2").src = play ? "https://i.imgur.com/IDzX9gL.png" : "https://i.imgur.com/quyUPXN.png";
}
function toggleAudio2() {
if ( player2.getPlayerState() == 1 || player2.getPlayerState() == 3 ) {
player2.pauseVideo();
togglePlayButton2(false);
} else {
player2.playVideo();
togglePlayButton2(true);
}
}
function togglePlayButton3(play) {
document.getElementById("youtube-icon3").src = play ? "https://i.imgur.com/IDzX9gL.png" : "https://i.imgur.com/quyUPXN.png";
}
function toggleAudio3() {
if ( player3.getPlayerState() == 1 || player3.getPlayerState() == 3 ) {
player3.pauseVideo();
togglePlayButton3(false);
} else {
player3.playVideo();
togglePlayButton3(true);
}
}
function togglePlayButton4(play) {
document.getElementById("youtube-icon4").src = play ? "https://i.imgur.com/IDzX9gL.png" : "https://i.imgur.com/quyUPXN.png";
}
function toggleAudio4() {
if ( player4.getPlayerState() == 1 || player4.getPlayerState() == 3 ) {
player4.pauseVideo();
togglePlayButton4(false);
} else {
player4.playVideo();
togglePlayButton4(true);
}
}
function onPlayerReady1(event) {
player1.setPlaybackQuality("small");
document.getElementById("youtube-audio1").style.display = "block";
togglePlayButton1(player1.getPlayerState() !== 5);
}
function onPlayerStateChange1(event) {
if (event.data === 0) {
togglePlayButton1(false);
}
}
function onPlayerReady2(event) {
player2.setPlaybackQuality("small");
document.getElementById("youtube-audio2").style.display = "block";
togglePlayButton2(player2.getPlayerState() !== 5);
}
function onPlayerStateChange2(event) {
if (event.data === 0) {
togglePlayButton2(false);
}
}
function onPlayerReady3(event) {
player3.setPlaybackQuality("small");
document.getElementById("youtube-audio3").style.display = "block";
togglePlayButton3(player3.getPlayerState() !== 5);
}
function onPlayerStateChange3(event) {
if (event.data === 0) {
togglePlayButton3(false);
}
}
function onPlayerReady4(event) {
player4.setPlaybackQuality("small");
document.getElementById("youtube-audio4").style.display = "block";
togglePlayButton4(player4.getPlayerState() !== 5);
}
function onPlayerStateChange4(event) {
if (event.data === 0) {
togglePlayButton4(false);
}
}
<div data-video="DMl1YJyqEdo" >
<div style="display:flex;justify-content:center;align-items:center;">
<div style="width:400px;height:300px;">
<div data-video="JC08Fu3QfJg" data-autoplay="0" data-loop="1" id="youtube-audio1"></div>
<div data-video="7_WWz2DSnT8" data-autoplay="0" data-loop="1" id="youtube-audio2"></div>
<div data-video="t3217H8JppI" data-autoplay="0" data-loop="1" id="youtube-audio3"></div>
<div data-video="cbZ7V2ifh20" data-autoplay="0" data-loop="1" id="youtube-audio4"></div>
</div>
</div>
</div>
最佳答案
<!doctype html>
<html>
<head>
<meta charset = "UTF-8"/>
<title>Example</title>
</head>
<body>
<button><div data-video = "....">
data-autoplay = "0";
data-loop = "1";
id= "youtube-audio";
</div></button>
<script src = "https://www.youtube.com/iframe_api"></script>
<script src = "https://cdn.rawgit.com/labnol/files/master/yt.js"></script>
</body>
</html>
不知道你说的是不是这个意思。不要混淆,只要您不将视频 http 地址中 v= 之后的部分输入 div data-video =
关于javascript - 如何嵌入多个 YouTube 音频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49797207/
是否有任何解决方案来禁用右键单击选项并从 Youtube 视频中删除右下角水印 Logo ?我在搜索 GOOGLE 后尝试过。谁能告诉我? 谢谢你。 最佳答案 试试 modestbranding范围:
我想使用 YouTube API (v3) 来启用仅音乐轨道的搜索(没有猫或藤蔓或任何其他非音乐视频)。我查看了 API Explorer 和文档以获取有关该问题的任何指示,但找不到任何有用的信息。
我需要为网站使用YouTube视频缩略图的maxresdefault版本,但是在开发实现此目的的代码后,我发现并非所有视频都具有这些缩略图,尽管这些视频均为1080p。 有没有一种方法可以自动为我的所
我想通过“iframe”嵌入youtube视频,但YouTube在我国禁止使用,建议我如何在我的网站上嵌入视频! [1]:以下图片显示了在我的国家/地区无法访问youtube 最佳答案 该视频将被嵌入
我正在为myBB使用一个名为Profile Music Plugin的插件,可以在此处找到http://community.mybb.com/mods.php?action=view&pid=75 我
Youtube IFRAME API中是否有可以执行命令的功能,例如在播放的视频结尾处打开网站? (我相信有一个功能可以在旧的Java API下执行此操作,但该功能已于去年弃用。) 最佳答案 您可以引
我试图在Videos.insert和Videos.update查询中设置3d尺寸标志。但是标志不会改变。 更新查询示例: 请求: PUT https://www.googleapis.com/yout
使用此获取评论 评论主题:列表 GET https://www.googleapis.com/youtube/v3/commentThreads?part=snippet { "error": {
最近,我尝试使用OEmbed服务通过播放列表查询参数获取视频网址的iframe代码,但是OEmbed为我们提供了与我要求的视频不同的iframe代码。 这是带有播放列表查询参数的视频网址: https
我正在使用此代码: https://www.googleapis.com/youtube/v3/search?q=global+warming&part=id&maxResults=50&key=MY
我有一个LiveBroadcast,并且将来会添加一个scheduledStartTime。据我所知,这次测试不会对LiveBroadcast的整体状态产生影响,即广播是否具有准备就绪/测试的life
YouTube API是否支持在特定时间后关闭浏览器的参数? 这需要使用链接在不同位置共享来推广促销视频。视频播放结束后关闭浏览器。 最佳答案 您可以使用Youtube API监控视频是否播放完毕,然
如果没有表单上的透明面板,YouTube Player将可以正常播放视频,或者可以全屏播放视频,透明面板中有一些图像没有什么特别的。如果我取出透明面板,则YouTube播放器会按需工作,并嵌入到应用程
我正在通过Google进行身份验证,以尝试获取YouTube分析数据,但我的问题是我不知道在查询YouTube时如何向您填充参数 在这里,我正在提供一项新服务:然后尝试查询它 我不确定要在“ids”参
我想添加youtube视频列表,但不添加视频播放器。所以我需要的是 视频标题 视频缩略图 视频时长 我以某种方式设法通过使用此http://img.youtube.com/vi/4wew2uWoARw
我正在使用youtube api和python库gdata 我遵循了文档,但似乎没有出路。 问题是 - How do i get the size of the youtube video fil
使用Youtube API,我如何获得评论或顶过youtube视频的用户ID /处理列表? 提前致谢 最佳答案 在这里,您可以了解如何使用YouTube API v2(v3尚不支持此注释)获取评论:h
我正在为所有相关数据构建一个仪表板(以php为单位),我还想在YouTube“稍后观看”播放列表中显示我的商品数量。 我知道无法使用YouTube API来解决这个问题,但是也许有人想出一种解决方法?
我尝试使用YouTube API,但存在引号问题。 SearchResource.ListRequest searchListRequest = yt.Search.List("sni
我想为我的Android应用程序的用户构建视频推荐器。我有Google OAuth可以登录我的应用程序。我可以获取有关我的应用程序用户在YouTube上观看的视频的数据吗? 最佳答案 v3 API分为
我是一名优秀的程序员,十分优秀!