Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.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
Facebook广告:如何创建像素自定义Javascript事件来检测点击Youtube视频_Javascript_Wordpress_Youtube_Facebook Ads Api_Youtube Iframe Api - Fatal编程技术网

Facebook广告:如何创建像素自定义Javascript事件来检测点击Youtube视频

Facebook广告:如何创建像素自定义Javascript事件来检测点击Youtube视频,javascript,wordpress,youtube,facebook-ads-api,youtube-iframe-api,Javascript,Wordpress,Youtube,Facebook Ads Api,Youtube Iframe Api,假设我们有Youtube嵌入的代码: <iframe id="my-youtube-video-id" width="560" height="315" src="https://www.youtube.com/embed/tzbrKBv-khE" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></if

假设我们有Youtube嵌入的代码:

<iframe id="my-youtube-video-id" width="560" height="315" src="https://www.youtube.com/embed/tzbrKBv-khE" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

以及Facebook像素事件代码:

<button id="addToCartButton">Purchase</button>
<script type="text/javascript">
$('#$my-youtube-video-id').click(function() {
fbq('track', 'ViewContent');
});
</script>
购买
$('#$my youtube video id')。单击(函数(){
fbq(“轨迹”、“视图内容”);
});
但当有人点击视频时,它似乎无法检测到。我在WordPress上。知道我做错了什么吗


PS:我正在关注:和

上的文档,我认为这不是Facebook事件的问题,而是iFrame的问题。iFrame中承载的url接收click事件,并且不会将该事件冒泡到iFrame元素本身。幸运的是,通过youtube视频,您可以使用嵌入式播放器API根据播放器的状态执行操作。试试这个:


//此代码异步加载IFrame播放器API代码。
var tag=document.createElement('script');
tag.src=”https://www.youtube.com/iframe_api";
var firstScriptTag=document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(标记,firstScriptTag);
var播放器;
函数onyoutubeiframeapiredy(){
player=新的YT.player('my-youtube-video-id'{
活动:{
“onStateChange”:onPlayerStateChange
}
});
}
var-done;
函数onPlayerStateChange(事件){
如果(event.data==YT.PlayerState.PLAYING&&!done){
//这里是您可以添加事件的地方,我们还使用done变量来确保事件只触发一次。
fbq(“轨迹”、“视图内容”);
完成=正确;
}
}
编辑:查看此JSFIDLE,它将