- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要初始化 Youtube iframe 视频列表
因为有很多 youtube 视频并且列表可以从管理站点更改我需要使其动态化,这是使用类而不是 id
这是当前代码
const players = [];
onYouTubeIframeAPIReady(0);
onYouTubeIframeAPIReady(1);
function onYouTubeIframeAPIReady(index) {
players[index] = new YT.Player($('.wow_youtube_video')[index], {
events: {
'onStateChange': onPlayerStateChange
}
});
}
function onPlayerStateChange(event) {
// play
if(event.data == 1){
action = 'play';
}
// pause
if(event.data == 2){
action = 'pause';
}
if(event.data == 1 || event.data == 2){
dataLayer.push({
'event': 'trackEvent',
'eventDetails.category': 'videos',
'eventDetails.action': action,
'eventDetails.label': players[0].getVideoData().title // players[0] supposedly be players[index] but don't know how to pass the index balue from above function to this function
'videoName': players[0].getVideoData().title, //video name
'videoType': 'video on demand' //video type
});
}
}
如上图所示,倒数第8行
'eventDetails.label': players[0].getVideoData().title,
这段代码在这里
players[0]
应该是 players[index]
但我不知道如何从中传递索引值
players[index] = new YT.Player($('.wow_youtube_video')[index], {
events: {
'onStateChange': onPlayerStateChange
}
});
到onPlayerStateChange
函数
这样做的目的是为了能够携带索引值,这样代码就可以是动态的,因此我只需要将类名wow_youtube_video放在任何youtube iframe上就可以了
感谢任何帮助,谢谢
最佳答案
在函数 onYouTubeIframeAPIReady
上添加这个
players[index] = new YT.Player($('.wow_youtube_video')[index], {
events: {
'onStateChange': onPlayerStateChange.bind(index)
}
});
现在你可以在onPlayerStateChange
中获取index
function onPlayerStateChange(event) {
let index = this;
console.log(index);
}
关于javascript - Youtube iFrame API 将数据从 onYouTubeIframeAPIReady 传递到 onPlayerStateChange 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70469493/
我将 YouTube API 与 Cyclone Slider 结合使用。目标是在 YouTube 开始播放后暂停幻灯片。我正在使用以下代码,效果很好: var tag = document.cre
点击链接时,我尝试播放 YouTube 视频,并在播放完毕后用图片替换该视频。 上半场很轻松。但是我在下半场遇到了麻烦。最初我只是附加了一个 iframe 嵌入。但是为了收听 ENDED 事件,我尝试
这个问题已经有答案了: YouTube iframe player API - OnStateChange not firing (3 个回答) 已关闭10 年前。 截至 2013 年 6 月 13
我需要初始化 Youtube iframe 视频列表 因为有很多 youtube 视频并且列表可以从管理站点更改我需要使其动态化,这是使用类而不是 id 这是当前代码 const players =
这是我的 HTML 文件中正在运行的播放器。我希望 YT.PlayerState.ENDED 又名 event.data == 0 的处理程序能够引用客户端 Javascript 对象 (booth)
@Override public void onPlayerStateChanged(boolean playWhenReady, int playbackState) { switch (p
我是一名优秀的程序员,十分优秀!