Como faço para remover automaticamente um quadro de página HTML?
-
03-07-2019 - |
Pergunta
Qual é a melhor maneira de remover um quadro de página automaticamente?
Eu usei este tipo de código antes:
<script language="JavaScript">
setTimeout ("changePage()", 3000);
function changePage() {
if (self.parent.frames.length != 0)
self.parent.location="http://www.example.com";
}
</script>
Solução
Você quer dizer se alguém colocar uma moldura em torno de seu conteúdo? Se assim for, você precisa do seguinte em qualquer lugar na sua página HTML para saltar para fora do iframe:
<script type="text/javascript">
if (window.top.location != window.location) {
window.top.location = window.location;
}
</script>
Outras dicas
Aqui está uma alternativa que é mais genérico em que ele não nomear o URL pai, nem usar a chamada de função separada:
// is the current page at the top of the browser window hierarchy?
if (top.location != self.location)
{
// it isn't, so force this page to be at
// the top of the hierarchy, in its own window
top.location = self.location
}
Fazê-lo desta forma, se você quiser que o passo de quebra de quadro para não aparecer na história
if ( self.location !== top.location )
{
top.location.replace( self.location );
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow