Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我在使用“时出现此错误”;iframe嵌入的YouTube播放器API参考;_Javascript_Jquery_Youtube Api - Fatal编程技术网

Javascript 我在使用“时出现此错误”;iframe嵌入的YouTube播放器API参考;

Javascript 我在使用“时出现此错误”;iframe嵌入的YouTube播放器API参考;,javascript,jquery,youtube-api,Javascript,Jquery,Youtube Api,这是我得到的信息: 与位于的跨站点资源关联的cookie设置时没有SameSite属性。如果Chrome的未来版本设置为SameSite=None和Secure,则只能提供带有跨站点请求的cookie。您可以在应用程序>存储>cookies下查看开发人员工具中的cookies,并在和中查看更多详细信息 这是我使用的代码 <div id="youtubevideo" data-video-url="{{youtubevideourl}}"></div> <script

这是我得到的信息:

与位于的跨站点资源关联的cookie设置时没有
SameSite
属性。如果Chrome的未来版本设置为
SameSite=None
Secure
,则只能提供带有跨站点请求的cookie。您可以在应用程序>存储>cookies下查看开发人员工具中的cookies,并在和中查看更多详细信息

这是我使用的代码

<div id="youtubevideo" data-video-url="{{youtubevideourl}}"></div>
<script>


$('[data-video-url]').each(function () {
var $self = $(this);
try {
    get_video_thumb($self.data('video-url'), function (image) { if (image != 
    null) { $self.css('background-image', 'url(' + image.url + ')'); 
    $self.append('<iframe id="FeaturedVideo" class="mdl-cell--hide" 
    width="100%" height="100%" />'); } });
    } catch (e) { }
 });
$('[data-video-url]').click(function () {
player = new YT.Player('youtubevideo', {
    height: '480',
    width: '100%',
    videoId: getYoutubeVideoId($(this).data('video-url')),
    events: {
        'onReady': onPlayerReady
    }
});
function onPlayerReady(event) {
    event.target.playVideo();
}
});

function get_video_thumb(url, callback) {
var id = get_video_id(url);
if (id['type'] == 'y') { return processYouTube(id);
} else if (id['type'] == 'v') {
    $.ajax({
        url: 'http://vimeo.com/api/v2/video/' + id['id'] + '.json',
        dataType: 'jsonp',
        success: function (data) {
            callback({ type: 'v', id: id['id'], url: data[0].thumbnail_large });
        }
    });
}
function processYouTube(id) {
    if (!id) { throw new Error('Unsupported YouTube URL');}
    callback({ type: 'y', id: id['id'], url: 'https://i2.ytimg.com/vi/' + 
id['id'] + '/hqdefault.jpg' });
}}

function getYoutubeVideoId(url) {
if (url.indexOf('youtube.com') > -1) {
    if (url.indexOf('v=') > -1) {id = url.split('v=')[1].split('&')[0]; }
    else if (url.indexOf('embed') > -1) { id = url.split('embed/') 
   [1].split('?')[0]; };
    return id;
}}

function get_video_id(url) {
var id;
var a;
if (url.indexOf('youtube.com') > -1) {
    if (url.indexOf('v=') > -1) {id = url.split('v=')[1].split('&')[0];}
    else if (url.indexOf('embed') > -1) { id = url.split('embed/')[1].split('?')[0];};
    return processYouTube(id);
}
else if (url.indexOf('youtu.be') > -1) {id = url.split(/v\/|v=|youtu\.be\//)[1].split(/[?&]/)[0];return processYouTube(id);}
else if (url.indexOf('vimeo.com') > -1) { if (url.match(/https?:\/\/(www\.)?vimeo.com\/(\d+)($|\/)/)) { id = url.split('/')[3];}
else if (url.match(/^vimeo.com\/channels\/[\d\w]+#[0-9]+/)) {id = url.split('#')[1];}
else if (url.match(/vimeo.com\/groups\/[\d\w]+\/videos\/[0-9]+/)) { id = url.split('/')[4];}
else if (url.match(/player.vimeo.com\/video\/[0-9]+/)) {id = url.split('/')[2];}
else { throw new Error('Unsupported Vimeo URL');}
}
else {throw new Error('Unrecognised URL');}
a = { type: 'v', id: id };
return a;
function processYouTube(id) {
    if (!id) { throw new Error('Unsupported YouTube URL');}
    a = { type: 'y', id: id };
    return (a); // default.jpg OR hqdefault.jpg
}}
</script>

$(“[data video url]”)。每个(函数(){
var$self=$(本);
试一试{
get_video_thumb($self.data('video-url'),函数(image){if(image!=
null){$self.css('background-image','url('+image.url+'));
$self.append(“”);});
}捕获(e){}
});
$(“[data video url]”)。单击(函数(){
player=新的YT.player('youtubevideo'{
高度:'480',
宽度:“100%”,
videoId:getYoutubeVideoId($(this).data('video-url'),
活动:{
“onReady”:onPlayerReady
}
});
函数onPlayerReady(事件){
event.target.playVideo();
}
});
函数get\u video\u thumb(url,回调){
var id=获取视频id(url);
if(id['type']='y'){returnprocessyoutube(id);
}如果(id['type']='v'){
$.ajax({
网址:'http://vimeo.com/api/v2/video/“+id['id']+'.json”,
数据类型:“jsonp”,
成功:功能(数据){
回调({type:'v',id:id['id'],url:data[0].thumbnail\u large});
}
});
}
函数(id){
如果(!id){抛出新错误('Unsupported YouTube URL');}
回调({type:'y',id:id['id'],url:'https://i2.ytimg.com/vi/' + 
id['id']+'/hqdefault.jpg'});
}}
函数getYoutubeVideoId(url){
如果(url.indexOf('youtube.com')>-1){
如果(url.indexOf('v=')>-1){id=url.split('v='))[1].split('&')[0];}
else如果(url.indexOf('embed')>-1){id=url.split('embed/'))
[1] .split(“?”)[0];};
返回id;
}}
函数获取视频id(url){
变量id;
var a;
如果(url.indexOf('youtube.com')>-1){
如果(url.indexOf('v=')>-1){id=url.split('v='))[1].split('&')[0];}
如果(url.indexOf('embed')>-1){id=url.split('embed/')[1].split('?')[0];};
返回进程(id);
}
else if(url.indexOf('youtu.be')>-1{id=url.split(/v\/| v=|youtu\.be\/)[1]。split(/[?&]/)[0];返回进程youtube(id);]
else if(url.indexOf('vimeo.com')>-1){if(url.match(/https?:\/\/(www\)?vimeo.com\/(\d+)($|\/)/){id=url.split('/')[3];}
else if(url.match(/^vimeo.com\/channels\/[\d\w]+#[0-9]+/){id=url.split('#')[1]}
else if(url.match(/vimeo.com\/groups\/[\d\w]+\/videos\/[0-9]+/){id=url.split('/')[4];}
else if(url.match(/player.vimeo.com\/video\/[0-9]+/){id=url.split('/')[2];}
else{抛出新错误('Unsupported Vimeo URL');}
}
else{抛出新错误('无法识别的URL');}
a={type:'v',id:id};
返回a;
函数(id){
如果(!id){抛出新错误('Unsupported YouTube URL');}
a={type'y',id:id};
返回(a);//default.jpg或hqdefault.jpg
}}

您收到的消息显示,新的cookie限制尚未应用到您的浏览器中。您还可以在不影响任何功能的情况下为旧cookie获取这些消息。您能否分享更多信息,如代码片段或演示错误的页面,以帮助理解您正在尝试执行的操作?我更新了我使用的代码。请您检查并让我知道我遗漏的任何内容。这些信息仍然只是代码片段,不足以重现。一切都正常吗?不过,您看到的cookie消息目前并未影响行为。