No HTML 4.0 Strict e no XHTML 1.0 STRICT, o atributo target não pode ser usado na tag <a>, o que é algo frustrante para web designers. Ainda é permitido nas especificações de transição. problema pode ser resolvido.
O atributo target foi removido da especificação HTMl4.0, mas foi adicionado outro atributo: rel. Este atributo é usado para especificar o relacionamento entre o documento que contém o link e o valor do seu atributo é definido na especificação. :próximo, anterior, capítulo, seção), a maioria desses atributos é usada para definir o relacionamento entre pequenas partes em um documento grande. Na verdade, a especificação permite que os desenvolvedores usem livremente valores de atributos não padrão para fazer tarefas específicas. aplicativo.
Aqui, usamos um valor personalizado externo para o atributo rel para marcar um link para abrir uma nova janela.
Código do link que não está em conformidade com os padrões da web mais recentes:
<a href=document.html target=_blank>link externo</a>
Use o atributo rel:
<a href=document.html rel=external>link externo</a>
Agora que construímos um link para uma nova janela que está em conformidade com os padrões da Web, também precisamos usar JavaScript para implementar uma nova janela. O que o script precisa fazer é encontrar todos aqueles no documento que definimos como rel=external. quando a página da web é carregada.
Primeiro temos que determinar o navegador.
if (!document.getElementsByTagName) retornar;
getElementsByTagName é um método fácil de usar no padrão DOM1 e é suportado pela maioria dos navegadores atualmente. Como alguns navegadores antigos, como Netscape 4 e IE4, não suportam DOM1, devemos descartá-lo determinando se esse método existe. essas versões mais antigas de navegadores.
A seguir, obtemos todas as tags <a> do documento através do método getElementsByTagName:
var âncoras = document.getElementsByTagName(a);
As âncoras são atribuídas como um array contendo cada tag <a> Agora devemos percorrer cada tag <a> e modificá-la:
for (var i=0; i < âncoras.comprimento; i++) {
var âncora = âncoras;
Encontre a tag <a> para implementar uma nova janela
if (anchor.getAttribute(href) &&
âncora.getAttribute(rel) == externo)
Em seguida, crie o valor do atributo target e atribua o valor _target:
âncora.target = _blank;
Código completo:
--------------------------
função links externos() {
if (!document.getElementsByTagName) retornar;
var âncoras = document.getElementsByTagName(a);
for (var i=0; i<âncoras.comprimento; i++) {
var âncora = âncoras;
if (anchor.getAttribute(href) &&
âncora.getAttribute(rel) == externo)
âncora.target = _blank;
}
}
janela.onload = links externos;