javascript - How can I measure how long an embedded Vimeo video has been watched for? -


i have vimeo video embedded on webpage , want record google analytics event when user has watched video 10 seconds. there way measure how long video has been watched for? reference player uses: player.js - /* vimeoplayer - v2.7.1 - 2015-06-26 */

the playprogessevent of vimeo api contain seconds property.

so can ask listen event, , check property being more 10.

function postmsg(id){   var msg = {method:"addeventlistener", value: 'playprogress'};   var iframe = document.getelementbyid(id), cw;   if(iframe) cw = iframe.contentwindow;   if(!cw){settimeout(function(){postmsg(id)}, 200); return;}   cw.postmessage(json.stringify(msg), '*');   }  var messagelistener = function(e){     if (!(/^https?:\/\/player.vimeo.com/).test(e.origin))         return false;     var evt = json.parse(e.data);     if(evt.event==='ready') postmsg(evt.player_id);     if(evt.event==='playprogress') onplayprogress(evt.data);     }  function onplayprogress(data) {     if(data.seconds > 10) dosomething();     }  window.addeventlistener('message', messagelistener, false); iframe.src="http://player.vimeo.com/video/thevideoid?api=1&player_id="+iframe.id; 

jsfiddle


Comments

Popular posts from this blog

toolbar - How to add link to user registration inside toobar in admin joomla 3 custom component -

linux - disk space limitation when creating war file -

How to provide Authorization & Authentication using Asp.net, C#? -