Pero... ( y siempre hay un pero... )
Quizás no necesites acceder a los eventos internos de tu iframe para detectar un click. En su nivel más básico, cuando alguien hace click en un iframe, está activando el foco dentro de ese iframe, no?
Por qué no intentás hacer esto? (con jQuery, para facilitar)
Código Javascript
:
Ver original$().ready(
// Primero identificamos si estamos parados arriba de un ad de Google
var overAdsense = false;
$('ins > iframe').mouseover(function(){
overAdsense = true;
})
.mouseout(function(){
overAdsense = false;
});
);
Listo, primer punto cumplido. Tenemos la capacidad de saber si estamos con el mouse parados arriba de un Ad de Adsense. Esta es la parte más difícil.
Pero como decíamos recién, si podemos saber en qué momento hacemos foco en un lugar... entonces podemos saber automáticamente cuando dejamos de hacer foco en otro? Entonces, el momento fundamental en el que estamos haciendo click en un Ad... quién pierde foco?
El Objeto window.
Código Javascript
:
Ver original//continuamos
$(window).blur(function(){
if(overAdsense) {
/* aca no podemos hacer alerts o muchas otras cosas,
porque el click lo captura el iframe de google, asi que
vamos a guardar info haciendo una peticion ajax */
$.post({
url: 'http://nuestrodominio.com/script_que_captura.php',
data: {
adUrl: window.location.href,
adDate : Date()
}
});
}
});
Sin embargo, este método tiene un gotcha, y es que podemos identificar clicks hechos sobre nuestros Ads de Adsense, pero si una persona hace click sobre una parte que no es click, también estaríamos levantando el evento y haciendo la llamada AJAX.
Ya me cuentan que les parece y si les pareció útil.