Puoi fare riferimento a variabili AppMeasurement da iframe figlio e padre. È necessario definire tutte le variabili nella stessa posizione in cui si trova la libreria AppMeasurement. Gli esempi seguenti spiegano come impostare variabili e metodi di base di AppMeasurement all'interno e all'esterno di un iframe.
Se utilizzi i tag in Adobe Experience Platform, accertati che l’oggetto tracker sia accessibile a livello globale. Vedi Panoramica dell'estensione Adobe Analytics.
Evita di includere le librerie AppMeasurement sia su una pagina padre che su un iframe. In questo modo si rischia di inviare più richieste di immagini, gonfiare i rapporti e aumentare le chiamate al server fatturabili.
È possibile accedere alle variabili AppMeasurement tramite l'oggetto iframe. Questi esempi sono impostati pageName e chiama t(), metodo utilizzando due modi diversi per fare riferimento all'oggetto 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();
Puoi accedere alle variabili AppMeasurement da una pagina padre direttamente da un iframe. Questo esempio imposta pageName e chiama t(), metodo utilizzando parent
proprietà.
// 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
e ascoltatori di eventiIn alternativa, puoi utilizzare postMessage
e ascoltatori di eventi per impostare le variabili. Questo metodo non richiede un riferimento diretto 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
è impostata sull'URL principale, non sull'URL effettivo di riferimento. Puoi impostare manualmente la variabile referrer
per risolvere il problema.