Preciso abrir o link na mesma página pai, em vez de abri-lo em uma nova página.
nota: A iframe
página e o pai são do mesmo domínio .
html
iframe
hyperlink
html-target
Haim Evgi
fonte
fonte
Respostas:
Eu encontrei a melhor solução foi usar a tag base . Adicione o seguinte ao cabeçalho da página no iframe:
Isso carregará todos os links da página na janela pai. Se você deseja que seus links sejam carregados em uma nova janela, use:
Esta tag é totalmente suportada em todos os navegadores.
fonte
<base target>
deve vir antes de qualquer<a href>
, pois define o contexto de navegação padrão para os seguintes links;<base href>
deve vir antes de qualquer referência de URL (<* href>
<* src>
<form action>
<object data>
…), pois define o URL base contra o qual os URLs relativos são resolvidos.<base
tag não tem fechamento de acordo com a especificação w3.org/TR/html5/document-metadata#the-base-element assim que deve ser<base target="_parent" >
Use o atributo target:
fonte
<base target="_blank">
está ok, mas a questão aqui é sobre um link, não sobre a alteração do comportamento de todos os links no iframe. Para mim, esta é a resposta correta.Com JavaScript:
fonte
Você pode usar qualquer opção
no caso de apenas a página pai:
se você deseja abrir todos os links na página pai ou no iframe pai, use o seguinte código na seção principal do iframe:
<base target="_parent" />
OU
se você deseja abrir um link específico na página pai ou no iframe pai, use a seguinte maneira:
OU
no caso de iframe aninhado:
Se você deseja abrir todos os links na janela do navegador (redirecionar na URL do navegador), use o seguinte código na seção principal do iframe:
OU
se você deseja abrir um link específico na janela do navegador (redirecionar no URL do navegador), use o seguinte modo:
ou
fonte
Há um elemento HTML chamado
base
que permite:Ao especificar,
_blank
verifique se todos os links dentro do iframe serão abertos fora.fonte
Como observado, você pode usar um atributo de destino, mas foi tecnicamente reprovado em XHTML. Isso deixa você usando javascript, geralmente algo como
parent.window.location
.fonte
target
atributo não está mais obsoleto .Tente o
target="_parent"
atributo dentro doanchor tag
.fonte
Se você estiver usando o iframe em sua página da web, poderá encontrar um problema ao alterar a página inteira por meio de um hiperlink HTML (tag de âncora) do iframe. Existem duas soluções para mitigar esse problema.
Solução 1. Você pode usar o atributo de destino da marca âncora, conforme fornecido no exemplo a seguir.
Solução 2. Você também pode abrir uma nova página na janela pai do iframe com JavaScript.
Lembre-se ⇒
target="_parent"
foi descontinuado no XHTML, mas ainda é suportado no HTML 5.x.Mais informações podem ser lidas no link a seguir http://www.kriblog.com/html/link-of-iframe-open-in-the-parent-window.html
fonte
A solução mais versátil e cross-browser é evitar o uso da tag "base" e, em vez disso, usar o atributo de destino das tags "a":
A
<base>
tag é menos versátil e os navegadores são inconsistentes em seus requisitos para sua colocação no documento, exigindo mais testes entre navegadores. Dependendo do seu projeto e situação, pode ser difícil ou mesmo totalmente inviável obter o posicionamento ideal da<base>
tag entre navegadores .Fazer isso com o
target="_parent"
atributo da<a>
tag não é apenas mais amigável ao navegador, mas também permite distinguir entre os links que você deseja abrir no iframe e os que deseja abrir no pai.fonte
<a target="parent">
abrirá links em uma nova guia / janela ...<a target="_parent">
abrirá links na janela pai / atual, sem abrir novas guias / janelas. Não se esqueça disso!fonte
Yah eu encontrei
Isso é útil para abrir todos os links iframe abertos no iframe.
E
Isso podemos usar para página inteira ou parte específica da página.
Obrigado a todos por sua ajuda.
fonte
Tentar
target="_top"
fonte
"_top"
o mesmo que"_parent"
?fonte