Possible Duplicate:
Is it possible to use javascript to change the meta-tags of the page?
I'm trying to set meta tags using jQuery (please don't reply that this doesn't make sense since search engines blah-blah-blah... I am loading invoking 3rd party Javascript functions that examine these vales, such as Tweetmeme and Facebook).
If I use:
$('meta[name=some-name]').attr('content', 'some value');
it does work to set the value of an existing meta tag, but does not create a meta tag if such a named one does not exist.
If you have insight or experience with this, please reply...
You can do this, not the cleanest, but what you're trying to do is pretty odd so there's not a great way to handle it:
var mt = $('meta[name=some-name]');
mt = mt.length ? mt : $('<meta name="some-name" />').appendTo('head');
mt.attr('content', 'some value');
The conditional expression in there checks .length
, which is 0 or false
if not found, if that's the case we create the element and append it to the head, whether it was added or originally found, mt
is set to the <meta>
with that name now, and you can set the attribute.