El video HTML5 de YouTube dispara un mensaje console.log para varios eventos como la carga de un banner publicitario. Estoy tratando de captar el mensaje mediante programación console.log utilizando JavaScript para activar una función de la siguiente manera:Intentando capturar console.log Mensaje de YouTube <iframe>
console['log'] = function(msg){
// Operate on msg
}
Para enviar un mensaje a la console.log YouTube , el siguiente método funciona (en la escritura a mano para referencia ilustrativa):
document.getElementsByTagName('iframe')[youTubeIframe].contentWindow.console.log(msg);
sin embargo, el código siguiente no funciona:
document.getElementsByTagName('iframe')[youTubeIframe].contentWindow.console['log'] = function(msg){
// Operate on msg from YouTube <iframe>
}
I también lo han intentado:
window.console = document.getElementsByTagName('iframe')[youTubeIframe].contentWindow.console;
console['log'] = function(msg){
// Operate on msg
}
Lo que no entiendo es; si puedo invocar un mensaje de console.log a YouTube , ¿cómo puedo capturar el mensaje de registro de la consola? ¿Cuál es la forma correcta de hacer esto, si existe tal forma?
Sospecho que la seguridad del navegador no le permite acceder a la consola desde otro dominio. – jessehouwing
@jessehouwing Veo lo que dices, pero ¿no tendría más sentido bloquear los mensajes de registro de la consola PARA el iframe de otro dominio? – lincolnberryiii
Leerlos es más esencial. Digamos que un javascript registra un número de tarjeta de crédito en el registro, no querría que otro dominio los lea. Si escribes, ¿qué daño puedes hacer? :). – jessehouwing