Javascript To Change Metadata / Metatags Dynamically

烈酒焚心 提交于 2019-11-29 11:36:35

You wanna do something like this in the code for jQuery

$(document).ready(function(){
    $('title').text("Your new title tag here");
    $('meta[name=description]').attr('content', 'new Meta Description here');
});

you can add anything in the head tag by using the this (jquery)

$('head').append('<meta .... />');

As the above two solutions are using JQuery, here is a solution in pure javascript, incase if anyone is looking for:

to change the title:

<script>document.title = "this is title text";</script>

to change any meta tag:

<meta name="description" content="this is old content which we are going to change through javascript">

javascript code to change the above metatag.

<script>
var allMetaElements = document.getElementsByTagName('meta');
//loop through and find the element you want
for (var i=0; i<allMetaElements.length; i++) { 
  if (allMetaElements[i].getAttribute("name") == "Description") { 
     //make necessary changes
     allMetaElements[i].setAttribute('content', "description you want to include"); 
     //no need to continue loop after making changes.
     break;
  } 
} 

Good luck.

@bernabas's answer in plain ol' JavaScript:

document.head.textContext += '<meta ... />'

Shorter answer in pure javascript.

document
      .getElementsByTagName('meta')
      .namedItem('description')
      .setAttribute('content','My Meta Description Here')
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!