Domanda

Sul mio computer, sto usando un blocco degli annunci personalizzato basato sul reindirizzamento HOSTS (quindi posso avere il blocco degli annunci in Chrome). Sto eseguendo IIS sul mio computer, quindi ho un errore 404 vuoto personalizzato che viene visualizzato quando un annuncio basato su iframe viene visualizzato su una pagina.

Ho modificato il mio errore 404 per ereditare il colore di sfondo dal suo genitore in modo che l'annuncio non sembri odioso su siti con uno sfondo non bianco. La mia prossima sfida è quella di utilizzare la mia pagina 404 per comprimere completamente <iframe /> in modo che non venga affatto visualizzata sulla pagina.

È possibile modificare il tag <=> contenente all'interno dell'iframe? Voglio solo cambiare l'altezza & Amp; attributi di larghezza se questo è possibile. In tal caso, come potrei fare per fare questo?

È stato utile?

Soluzione

Non dovrebbe essere possibile, poiché i siti all'interno di iframe possono essere siti esterni. Consentire loro di manipolare l'ambiente in cui sono visualizzati sarebbe un rischio per la sicurezza del browser.

Faresti meglio ad usare un proxy di blocco degli annunci.

Altri suggerimenti

Se ti capisco correttamente, stai dicendo che vuoi che la tua pagina 404 inneschi un crollo dell'iframe quando viene caricato al suo interno. Il modo più semplice per farlo è creare una funzione nella pagina principale e quindi chiamarla dal 404 quando viene caricata.

Ad esempio, se il tuo iframe ha l'id " advertFrame " potresti aggiungere la seguente funzione javascript alla pagina principale:

function hideAdvertFrame() {
  var advertFrame = document.getElementById("advertFrame");
  advertFrame.style.height = 0;
  advertFrame.style.width = 0;
}

Quindi nella pagina 404, puoi chiamare immediatamente la funzione quando carica:

<body onload="window.parent.hideAdvertFrame();">

Detto questo, penso che potresti voler considerare altre opzioni oltre allo scripting cross frame che sono meno inclini a falle di sicurezza. Forse la tua pagina padre può usare AJAX per verificare se il blocco degli annunci avrà un URL valido prima del caricamento, quindi aggiungerlo dinamicamente alla pagina una volta certa.

La pagina che riempie l'iframe non può alterare nulla della pagina che contiene l'iframe. Se potesse, sarebbe un enorme rischio per la sicurezza. A dire il vero, ho provato esattamente quello che mi stai chiedendo usando i due domini che mi sono stati dati a scuola. In poche parole, non ha funzionato; Ho ricevuto un errore di autorizzazione negata in Firebug.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top