问题在于:我在滑块中有多个YouTube视频,并且我希望在单击控制滑块的链接时停止播放视频.当你无法看到视频时,让视频继续播放真的很烦人.
我用过这段代码:
<div id="ytapiplayer2">
You need Flash player 8+ and JavaScript enabled to view this video.
</div>
<script type="text/javascript">
function onYouTubePlayerReady(playerId) {ytplayer2 = document.getElementById("myvideo");}
var params = { allowScriptAccess: "always" };var atts = { id: "myvideo" };
swfobject.embedSWF("http://www.youtube.com/v/hCarSDT7cSQ?enablejsapi=1&version=3&playerapiid=myvideo","ytapiplayer2", "425", "270", "8", null, null, params, atts);
function play() {if (ytplayer2) {ytplayer2.playVideo();}}
function pause() {if (ytplayer2) {ytplayer2.pauseVideo();}}
</script>
Run Code Online (Sandbox Code Playgroud)
这基本上直接来自谷歌的Youtube js api.1每页只有一个视频,效果很好.
我的问题是我有一些页面,我想在同一个滑块中有多个视频.视频包含在div中,并且在每个相应的div中完全如上所示进行调用.
但是 - 当点击滑块的导航链接时,视频现在不会停止播放.:(
每次调用脚本时,我都试图将变量和id名称更改为唯一.我甚至将函数名称从函数onYouTubePlayerReady更改为onYouTubePlayerReady2 ...但没有任何作用.
我很难过.HALP?
编辑以显示更详细的代码设置:
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.0/jquery.min.js" type="text/javascript"></script><!--Uses Google API library-->
<script src="http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js" type="text/javascript"></script><!--Uses Google …Run Code Online (Sandbox Code Playgroud) javascript youtube slider youtube-api youtube-javascript-api
当YouTube视频达到特定时间戳时,API文档不包含触发javascript事件的明显方法.你知道任何解决方法吗?
我正在使用Youtube Javascript API开发无边框播放器.你能告诉我如何在播放器上使用Javascript添加/开发"全屏控制"吗?
这就是我从每条记录的响应中获取缩略图的方法
data.items[i].snippet.thumbnails.high.url
Run Code Online (Sandbox Code Playgroud)
但对于一些视频我只是得到默认图像
https://i.ytimg.com/vi/default.jpg
Run Code Online (Sandbox Code Playgroud)
而不是例子
https://i1.ytimg.com/vi/umgK1_5Dcw4/hqdefault.jpg
Run Code Online (Sandbox Code Playgroud)
我如何解决此问题缩略图在我的YouTube频道中可见
我在html中有这个代码:
<div class="flex-video widescreen youtube">
<iframe id="ytplayer" type="text/html" width="640" height="360" src="https://www.youtube.com/embed/{{Video.v_id}}?autoplay=1&enablejsapi=1&autohide=1" frameborder="0" allowfullscreen> </iframe>
</div>
Run Code Online (Sandbox Code Playgroud)
这个代码在javascript中:
function onYouTubePlayerReady(playerId) {
console.log("player ready");
ytplayer = document.getElementById("ytplayer");
}
Run Code Online (Sandbox Code Playgroud)
当我输入forefox控制台时:
ytplayer.playVideo();
Run Code Online (Sandbox Code Playgroud)
我得到了not function错误:
<div class="flex-video widescreen youtube">
<iframe id="ytplayer" type="text/html" width="640" height="360" src="https://www.youtube.com/embed/{{Video.v_id}}?autoplay=1&enablejsapi=1&autohide=1" frameborder="0" allowfullscreen> </iframe>
</div>
Run Code Online (Sandbox Code Playgroud)
还有console.log("播放器就绪"); 根本不打印.
有谁能够帮我 ?
我想用javascript api控制播放器而不是IFrame api.我希望视频播放器在html5中.
编辑:我启用了jspapi(enablejsapi = 1)
嘿,我正在实现Youtube Video Player Api,我在控制台中看到了某种错误.
任何视频如何完美播放,但我想知道为什么错误?如果我将代码保留在Skeleton Patterns之外,那就不会有任何错误.
有人可以遮挡一些光..
谢谢!!
JS:
(function($) {
$(function(){
var cVid, ytData1;
var callFlexSlider = ({
embedVideos : function(){
function explodeSlider(){
$('.sliderNew .flexslider').flexslider({
slideshow: false
});
$('.sliderNew #carousel, .sliderNew .flex-direction-nav').hide();
}
function explodeShow(){
$('.sliderNew .flexslider').flexslider({
slideshow: true
});
$('.sliderNew #carousel, .sliderNew .flex-direction-nav').show();
}
function getArtistId() {
return window.artist_id;
}
function loadPlayer() {
if (typeof(YT) == 'undefined' || typeof(YT.Player) == 'undefined') {
var tag = document.createElement('script');
tag.src = "https://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
window.onYouTubePlayerAPIReady = …Run Code Online (Sandbox Code Playgroud) javascript youtube youtube-api youtube-javascript-api youtube-data-api
当我想在我的 Expo 应用程序中嵌入 YouTube 视频时,我遇到了问题,当我单击播放按钮时,有时会收到以下消息:
例如,当我在 reddit 上发布此视频时,它通过他们的 YouTube 嵌入式播放器完美播放。
我使用这个代码示例:
<WebView
useWebKit={true}
ref={(ref) => { this.videoPlayer = ref;}}
source={{uri: 'https://www.youtube.com/embed/bo_efYhYU2A?rel=0&autoplay=0&showinfo=0&controls=0'}}
scrollEnabled={false}
domStorageEnabled={true}
javaScriptEnabled={true}
/>
Run Code Online (Sandbox Code Playgroud)
我知道视频是允许嵌入的,因为如果不是这种情况,我会收到一条不同的错误消息,它允许我在 youtube 上打开视频:

这是测试它的链接:https://snack.expo.io/@maxgfr/youtube-embedded
任何帮助将不胜感激
马克西姆
youtube youtube-api webview youtube-javascript-api youtube-data-api
我创建了一个带有YouTube Javascript API的YouTube播放器,用于加载我创建的播放列表.
由于视频无铬,因此不会显示控件或视频信息.我希望拉出当前播放视频的标题并将其显示在下面.我可以使用ytplayer.getDuration()和ytplayer.getCurrentTime()等信息来提取当前时间位置和当前视频持续时间等信息.
想知道像"ytplayer.getTitle()"这样的东西是否可能存在但是没有记录?
寻找有关如何使用youtube v3 API获取视频信息的见识。
当传递URL时,我得到的json响应是:
{"error":{"errors":[{"domain":"global","reason":"sslRequired","message":"SSL is required to perform this operation."}],"code":403,"message":"SSL is required to perform this operation."}}
Run Code Online (Sandbox Code Playgroud)
我要做的就是获取基本信息(标题,说明等),因此我在该部分使用了“代码段”。
这是我正在使用的示例网址:
http://www.googleapis.com/youtube/v3/videos?id=Ho4XgLj40Ss&part=snippet
Run Code Online (Sandbox Code Playgroud)
我尝试创建一个API密钥并将其添加&key={my_api_key}到该URL的末尾。
如果环境很重要,那么我将在自定义Wordpress主题中使用jquery getJSON请求。
我应该在文档的“立即尝试”部分中提及它返回一个不错的json对象-禁用OAuth。
我知道这个问题似乎之前已被问过,但它显然没有(至少在堆栈溢出).当我尝试将它们嵌入到我的iOS应用程序中时,对于某些视频使用Youtube iOS helper api会出现以下错误.
"此视频包含来自VEVO的内容.限制在某些网站上播放."
下面的错误是相当自我解释的......似乎你无能为力.我可以忍受这一点.但还有更多.
我对此消息感到困惑的原因(并且它指的是Youtube上的任何VEVO音乐视频)是视频在Android上播放.其他人也有这个问题...在这里说:https://github.com/youtube/youtube-ios-player-helper/issues/52
如果其他网站存在限制 - 并且很可能 - 它应该在iOS和Android设备上受到限制.我觉得这个限制只适用于iOS,这很奇怪.
有人可以提供建议吗?
干杯!
youtube-api youtube-javascript-api android-youtube-api youtube-data-api