É possível usar JavaScript para alterar as metatags da página?

Se eu colocar um div na cabeça e exibir: nenhum, do que usar JavaScript para exibi-lo, isso funcionará?

Editar:

Eu tenho coisas carregadas em AJAX. E como meu AJAX muda a parte “principal” do site, também quero alterar as metatags.

    Sim, você pode fazer isso.

    Existem alguns casos de uso interessantes: Alguns navegadores e plugins analisam meta-elementos e alteram seu comportamento para valores diferentes.

    Exemplos

    Skype: Desligue o analisador de números de telefone

     

    iPhone: Desligue o analisador de números de telefone

      

    Frame do Google Chrome

      

    Definição de viewport para dispositivos móveis

      

    Este pode ser alterado pelo JavaScript. Veja: Uma correção para o erro de escala da viewport do iPhone

    Meta Descrição

    Alguns agentes do usuário (o Opera, por exemplo) usam a descrição para marcadores. Você pode adicionar conteúdo personalizado aqui. Exemplo:

     < !DOCTYPE html> Test     

    Então, não é apenas sobre mecanismos de busca.

    Você usaria algo como (com jQuery):

     $('meta[name=author]').attr('content', 'New Author Name'); 

    Mas isso seria inútil, já que as metatags geralmente só são copiadas quando o documento é carregado, geralmente sem executar nenhum JavaScript.

    Sim.

    Por exemplo, para definir a meta-descrição:

     document.querySelector('meta[name="description"]').setAttribute("content", _desc); 

    Você pode alterar meta com, por exemplo, chamadas de jQuery, como estas:

     $('meta[name=keywords]').attr('content', new_keywords); $('meta[name=description]').attr('content', new_description); 

    Eu acho que importa por agora, desde que o Google disse que eles irão indexar o conteúdo do ajax através de #!hashes _escaped_fragment_ e chamadas _escaped_fragment_ . E agora eles podem verificá-lo (mesmo automaticamente, com navegadores sem cabeça, veja o link ‘Criando Instantâneos de HTML’ na página mencionada acima), então eu acho que é o caminho para os caras hardcore de SEO.

    Deve ser possível assim (ou use jQuery como $('meta[name=author]').attr("content"); ):

       Meta Data          

    meta tags são parte do dom e podem ser acessadas e -i-guess- alterado, mas os mecanismos de busca (os principais consumidores de metatags) não verão a mudança, pois o javascript não será executado. Então, a menos que você esteja alterando uma metatag (a atualização vem à mente), o que tem implicações no navegador, isso pode ser de pouca utilidade?

     $(document).ready(function() { $('meta[property="og:title"]').remove(); $('meta[property="og:description"]').remove(); $('meta[property="og:url"]').remove(); $("head").append(''); $("head").append(''); $("head").append(''); }); 
     var metaTag = document.getElementsByTagName('meta'); for (var i=0; i < metaTag.length; i++) { if (metaTag[i].getAttribute("http-equiv")=='refresh') metaTag[i].content = '666'; if (metaTag[i].getAttribute("name")=='Keywords') metaTag[i].content = 'js, solver'; } 

    É definitivamente possível usar o Javascript para alterar as metatags da página. Aqui está uma abordagem somente JavaScript:

     document.getElementsByTagName('meta')["keywords"].content = "My new page keywords!!"; document.getElementsByTagName('meta')["description"].content = "My new page description!!"; document.title = "My new Document Title!!"; 

    Verifiquei que o Google indexa essas alterações no lado do cliente para o código acima.

    Não, um div é um elemento do corpo, não um elemento de cabeça

    EDIT: Em seguida, a única coisa que SEs vai obter é o HTML base, não o modificado ajax.

    Sim, é possível adicionar metatags com Javascript. Eu fiz no meu exemplo

    Android não respeitando a remoção de metatag?

    Mas eu não sei como alterá-lo e depois removê-lo. Btw, no meu exemplo .. quando você clica no botão ‘ADD’ adiciona a tag e as mudanças de viewport respectivamente, mas eu não sei como reverter isso (removê-lo, no Android) .. Eu gostaria que houvesse firebug para Android assim Eu vi o que estava acontecendo. O Firefox remove a tag. Se alguém tiver alguma ideia sobre isso, por favor, note isso na minha pergunta.

    simples add e div atribute para cada exemplo de meta tag

        

    Agora, como a mudança div normal para ex. n clique

     Change Meta Tags 

    Tags de mudança de function com jQuery

     function changeTags(){ $("#mtlink").attr("content","http://albup.com"); $("#mtdesc").attr("content","music all the time"); $("#mtkwrds").attr("content","mp3, download music, "); } 

    tem isso no índice

      

    tem isso em ajaxfiles og: digite “og: title” og: description e og: image

    e adicione isso também

      

    em seguida, adicione js após o ajaxCall

     FB.XFBML.parse(); 

    Edit: Você pode, em seguida, exibir o título correto e imagem para facebook em txt / php doubles (os meus são apenas chamados .php como extensões, mas são mais arquivos txt). Eu, então, tenho as metatags nesses arquivos e o link de volta ao índice em cada documento, também um link meta no arquivo de índice para cada subarquivo.

    Se alguém souber uma maneira melhor de fazer isso, eu apreciaria quaisquer adições 🙂

    Isto parece estar funcionando para um aplicativo rigidamente geometricamente definido, onde ele precisa rodar tanto em navegadores móveis quanto em outros navegadores, com poucas mudanças, para encontrar o status do navegador móvel / não móvel e para celulares que definem a porta de visualização como largura do dispositivo. Como os scripts podem ser executados a partir do header, o js no header abaixo parece alterar a metatag para largura do dispositivo Antes que a página seja carregada. Pode-se notar que o uso de navigator.userAgent é estipulado como experimental. O script deve seguir a input da metatag a ser alterada, portanto, é necessário escolher algum conteúdo inicial e, em seguida, alterar em alguma condição.

        

    . . . . . .