Mi inglobano il sito

Alcuni simpaticoni – più o meno in buona fede – si divertono a inserire i siti di terzi all’interno di strutture di frame o di iframe. Come al solito, se la cosa vi infastidisce, consiglio sempre di passare prima per la strada educata e rispettosa, componendo una gentile email di richiesta di rimozione.

Se però non si ottengono risposte, o peggio risposte maleducate, si può fare una cosa altrettanto simpatica, ovvero tramite un semplice script decidere di comportarsi in modo non usuale col proprio sito.

Possiamo quindi – verificando che il sito non è nel “proprio posto” – inoltrare l’utente in qualche divertente o “eccitante” sito, oppure di sbalzare il nostro sito direttamente a tutto browser, saltando a piè pari la struttura del “chiamante”.

Farlo è abbastanza banale. Per identificare se il nostro sito è contenuto in un frame basta verificare che la pagina “viva” nella finestra principale di navigazione, chiamata top. Se non è così allora si fa qualcosa. Ecco come rintracciare il “se”:

<script type="text/javascript">
var isInIFrame = (window.location != window.parent.location) ? true : false;
</script>

Se volete fare in modo che il vostro sito diventi il sito principale lo si carica in “top” così:

<script type="text/javascript">
var isInIFrame = (window.location != window.parent.location) ? true : false;
if (isInIFrame){
   window.top.location = window.location;
}
</script>

Se volete sparare in top un altro sito al posto di window.location potete mettere un “http://www.ilsitochetivadimettere.eccolo“.

Se ancora volete comportamenti diversi in merito all’url del sito possiamo ottenere un gioco simpatico con l’indexOf():

<script type="text/javascript">
var isInIFrame = (window.location != window.parent.location) ? true : false;</script>
if (isInIFrame){
   if (window.top.location.indexOf("http://www.ilsitochemiospita.bravo") >= 0){
      window.top.location = window.location;
   }else{
      window.top.location = "http://www.guardadovetimandoora.qua";
   }
}
</script>

Tutto chiaro?

Loading Facebook Comments ...

4 pensieri su “Mi inglobano il sito

    1. Merlinox Autore articolo

      @Gregorio: salvare in un file txt è un’operazione che solo un linguaggio server side può fare (php, asp, jps, cfm, …). Sicuramente non è possibile farlo in javascript. Come soluzioni ce ne potrebbero essere un paio valide:
      – nel caso di iframe, prima di cambiare la location, richiami la funzione di Google Analytics e ti registri l’evento: http://goo.gl/gXHZh
      – la pagina che ricarichi la personalizzi passando un parametro in query string (cioè nell’url) e nel tuo sito tratti quel parametro registrando lato server dove vuoi.

      – WPch: http://www.google.com/support/forum/p/webmasters/thread?tid=2ce9ad9d64745bb7&hl=it e altri vari casi che si vedono in giro. Ma anche qualcuno a cui dia fastidio essere inglobato in oknotizie o simili.

      Rispondi
  1. WPch

    Simpatico script, ma chi avrebbe interesse a mettere un altro sito in un frame al posto di un proprio sito? Non capisco la logica iniziale e mi hai incuriosito! ^_^

    Grazie

    Rispondi

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *