Если я поместил отделение в голову и display:none, чем использование JavaScript для отображения его, это будет работать?
Править:
У меня есть материал, загруженный в Ajax. И поскольку мой Ajax изменяет "основную" часть сайта, я хочу изменить метатеги также.
Да, вы можете это сделать.
Есть несколько интересных вариантов использования: Некоторые браузеры и плагины анализируют метаэлементы и меняют свое поведение на разные значения.
<meta name="SKYPE_TOOLBAR" content="SKYPE_TOOLBAR_PARSER_COMPATIBLE">
<meta name="format-detection" content="telephone=no">
<meta http-equiv="X-UA-Compatible" content="chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
Это можно изменить с помощью JavaScript. См .: Исправление ошибки масштабирования области просмотра iPhone
Некоторые пользовательские агенты (например, Opera) используют описание для закладок. Здесь вы можете добавить персонализированный контент. Пример:
<!DOCTYPE html>
<title>Test</title>
<meta name="description" content="this is old">
<script type='text/javascript' src='http://code.jquery.com/jquery-1.8.2.js'></script>
<button>Change description</button>
<script type='text/javascript'>
$('button').on('click', function() {
// Just replacing the value of the 'content' attribute will not work.
$('meta[name=description]').remove();
$('head').append( '<meta name="description" content="this is new">' );
});
</script>
Итак, дело не только в поисковых системах.
Нет, div - это элемент тела, а не элемент заголовка
РЕДАКТИРОВАТЬ: Тогда единственное, что получат SE, - это базовый HTML, а не модифицированный ajax.
Вы бы использовали что-то вроде (с jQuery):
$('meta[name=author]').attr('content', 'New Author Name');
Но в большинстве случаев это было бы бессмысленно, поскольку метатеги обычно очищаются только при загрузке документа, обычно без выполнения какого-либо JavaScript.
мета-теги являются частью dom, и к ним можно получить доступ и -i guess- изменить, но поисковые системы (основные потребители метатегов) не увидит изменения, поскольку javascript не будет выполнен. так что, если вы не меняете метатег (на ум приходит обновление), который влияет на браузер, от этого может быть мало толку?
Это должно быть возможно вот так (или используйте jQuery, например $ ('meta [name = author]'). Attr ("content") ;
):
<html>
<head>
<title>Meta Data</title>
<meta name="Author" content="Martin Webb">
<meta name="Author" content="A.N. Other">
<meta name="Description" content="A sample html file for extracting meta data">
<meta name="Keywords" content="JavaScript, DOM, W3C">
</head>
<body>
<script language="JavaScript"><!--
if (document.getElementsByName) {
var metaArray = document.getElementsByName('Author');
for (var i=0; i<metaArray.length; i++) {
document.write(metaArray[i].content + '<br>');
}
var metaArray = document.getElementsByName('Description');
for (var i=0; i<metaArray.length; i++) {
document.write(metaArray[i].content + '<br>');
}
var metaArray = document.getElementsByName('Keywords');
for (var i=0; i<metaArray.length; i++) {
document.write(metaArray[i].content + '<br>');
}
}
//--></script>
</body>
</html>