En esta entrada os traigo un pedazo de código que puede ser útil para detectar clicks en iframes.
Lo hace, lo hace, seguro que muchas veces has leido o escuchado que no se puede hacer.
Cómo puedes ver con este código lo detectará, y así podremos controlar si se hace click en un iframe.
La mayoría de las redes de anunciantes que pagan por click utilizan iframes, y con este mini script podemos detectar si se hacen click dentro del iframe.
Esta función está hecha en javaScript, que tendrás que subir y adaptar a tu código de tu página web.
El código lo encontré en la web StackOverflow, después lo adapté a distintos proyectos, aquí está el código en bruto, sin adaptar, pero funciona correctamente.
$(window).on('blur',function(e) { if($(this).data('mouseIn') != 'yes')return; $('iframe').filter(function(){ return $(this).data('mouseIn') == 'yes'; }).trigger('iframeclick'); }); $(window).mouseenter(function(){ $(this).data('mouseIn', 'yes'); }).mouseleave(function(){ $(this).data('mouseIn', 'no'); }); $('iframe').mouseenter(function(){ $(this).data('mouseIn', 'yes'); $(window).data('mouseIn', 'yes'); }).mouseleave(function(){ $(this).data('mouseIn', null); }); $('iframe').on('iframeclick', function(){ console.log('Click dentro del iframe'); $('#result').text('Click dentro del iframe'); }); $(window).on('click', function(){ console.log('Click dentro de la ventana'); $('#result').text('Click dentro de la ventana'); }).blur(function(){ console.log('window blur'); }); $('<input type="text" style="position:absolute;opacity:0;height:0px;width:0px;"/>').appendTo(document.body).blur(function(){ $(window).trigger('blur'); }).focus(); |
Si quieres ocultar el iframe una vez que se haya hecho click, puedes utilizar esta función.
$('iframe').on('iframeclick', function(){ $(this).hide() // Or remove() $('#result').text('Clicked dentro del iframe'); }); |
Y listo, con esto puedes hacer tu propio “Click Fraud Monitor” XD.