Puede hacer referencia a variables de AppMeasurement desde iFrames secundarios y principales. Es necesario definir todas las variables en la misma ubicación donde existe la biblioteca AppMeasurement. En los siguientes ejemplos se explica cómo configurar variables y métodos básicos de AppMeasurement dentro y fuera de un iframe.
Si utiliza etiquetas en Adobe Experience Platform, asegúrese de que el objeto de seguimiento es accesible globalmente. Consulte Información general sobre la extensión Adobe Analytics.
Evite incluir bibliotecas de AppMeasurement tanto en una página principal como en un iframe. Al hacerlo, se corre el riesgo de enviar varias solicitudes de imagen, inflar informes y aumentar las llamadas facturables al servidor.
Puede acceder a las variables de AppMeasurement a través del objeto iframe. En estos ejemplos se establece pageName y se llama al método t() de dos formas diferentes de hacer referencia al objeto iframe.
// Reference AppMeasurement code that resides within an iframe and send an image request
document.getElementById('targetFrame').contentWindow.s.pageName="Page name within iframe";
document.getElementById('targetFrame').contentWindow.s.t();
// An alternate method to the above if there's only one iframe on the page
window.frames[0].contentWindow.s.pageName = "Page name within iframe";
window.frames[0].contentWindow.s.t();
Puede acceder a las variables de AppMeasurement en una página principal desde un iframe. En este ejemplo se establece pageName y se llama al método t() mediante la propiedad parent
.
// Reference AppMeasurement code on a parent page from within an iframe and send an image request
parent.s.pageName = "Page Name on Hosted Window";
parent.s.t();
postMessage
y detectores de eventosComo alternativa, puede utilizar postMessage
y detectores de eventos para establecer variables. Este método no requiere una referencia directa a un iframe.
// Place this code in your parent window
function listenMessage(e) {
if(e.data == "Example page view call") {
s.pageName = "Page name using postMessage";
s.t();
}
}
window.addEventListener("message", listenMessage, false);
// Place this code in the iframe
window.top.postMessage("Example page view call","https://example.com");
referrer
se establece en la dirección URL principal, no en la dirección URL de referencia real. Puede configurar manualmente la variable referrer
para resolver este problema.