Javascript 获取youtube播放器的视频播放
我在wordpress上创建了这个网页,在它的一些帖子中有来自youtube的视频,出于标记的目的,我需要捕获每个人每次点击播放视频的时间。我浏览过网络,但我能找到的是,由于这些视频都是在主域之外的iFrame上,所以不可能从它的内部捕捉到一些东西,比如点击 有没有什么方法可以让我在不改变网站内容的情况下点击播放按钮捕捉到这些信息?只是来自JS 提前问候和感谢。您可以使用youtube的 这就是你必须做的: 1) 。在页面中加载Javascript 获取youtube播放器的视频播放,javascript,jquery,html,wordpress,youtube,Javascript,Jquery,Html,Wordpress,Youtube,我在wordpress上创建了这个网页,在它的一些帖子中有来自youtube的视频,出于标记的目的,我需要捕获每个人每次点击播放视频的时间。我浏览过网络,但我能找到的是,由于这些视频都是在主域之外的iFrame上,所以不可能从它的内部捕捉到一些东西,比如点击 有没有什么方法可以让我在不改变网站内容的情况下点击播放按钮捕捉到这些信息?只是来自JS 提前问候和感谢。您可以使用youtube的 这就是你必须做的: 1) 。在页面中加载 <script src="http://www.youtub
<script src="http://www.youtube.com/player_api"></script>
。。。另外请注意我们在iframe
中添加了一个ID
3) 。创建3个功能:
function onYouTubePlayerAPIReady() {
var id = document.getElementById("myIframe").getAttribute("id");
var player = new YT.Player(id, {
events: {
onReady: onPlayerReady,
onStateChange: onPlayerStateChange
}
});
} // youtube API ready
a) <代码>onPlayerReady:
在这里,您可以检测视频何时已加载并准备播放。在这里,您可以实际开始视频等
function onPlayerReady(event) {
// video is ready, do something
event.target.playVideo();
}
b) <代码>onPlayerStateChange:
您可以在此处检测触发的事件:
function onPlayerStateChange(event) {
console.log(event.data); // event triggered
// e.g. end of video
if (event.data === 0) {
// end of video: do something here
}
}
当您单击
播放或暂停时,将触发一个事件。然后,您可以决定要执行的操作,包括推送跟踪事件等
这是每个事件返回值的列表:
请参阅以了解有关这些事件的更多信息
c) <代码>onYouTubePlayerAPIReady:
这是您实际初始化API并将事件绑定到其他函数的地方:
function onYouTubePlayerAPIReady() {
var id = document.getElementById("myIframe").getAttribute("id");
var player = new YT.Player(id, {
events: {
onReady: onPlayerReady,
onStateChange: onPlayerStateChange
}
});
} // youtube API ready
请参见
function onYouTubePlayerAPIReady() {
var id = document.getElementById("myIframe").getAttribute("id");
var player = new YT.Player(id, {
events: {
onReady: onPlayerReady,
onStateChange: onPlayerStateChange
}
});
} // youtube API ready