Динамическая обработка метаданных

Я получаю данные с сервера для динамического создания видеогалереи на клиенте. Эти данные содержат информацию, связанную с метаданными, например, вкладчик и т. Д.

У меня есть стандартный фрагмент для основных данных дублина на моей веб-странице, как

    <meta name="DC.Source" id="videdsource" />
    <meta name="DC.Description" id="metadesv" />
    <meta name="DC.Creator" id="videdcreator" />
    <meta name="DC.Contributor" id="videdcontr" />
    //and so on, for all the dublin core elements...

Каждый раз, когда пользователи выбирают другое видео, я хочу динамически изменять значения метаданных, используя такой код, как

document.getElementById("videdcreator").content=arrayvid[i];

Это не работает. Потому что, если я загружаю веб-страницу и смотрю на исходный код, стандартные дублирующие базовые элементы имеют значение, например

<meta name="DC.Rights" content="Copyright 2014"  />

но элементы, которые я хочу изменить динамически, не имеют значений, как

<meta name="DC.Contributor" id="videdcontr" />

Как это исправить?

Как лучше всего динамически обрабатывать мультимедийные метаданные на веб-странице?

Спасибо

3 ответа

Это была моя ошибка, потому что, прежде всего, метаданные не поддерживают id,

Но у них есть имя. Итак, в чистом JS я могу сделать getElementsByName а потом setAttribute

Так что код

//html part
<meta name="DC.Creator"/>
<button id="change" type="button">change it</button>


//javascript part
document.getElementById('change').onclick=myfunc;
var ha="ha";
function myfunc()
    {
    document.getElementsByName("DC.Creator")[0].setAttribute("content",ha);
    }

Вы можете увидеть свои изменения, выполнив команду "проверить элемент" в своем браузере.

Кредиты отправляются пользователю с именем "geomagas" на этом греческом форуме

Используйте php и сделайте что-то вроде

<meta name="DC.Creator" id="videdcreator" content="<?echo $arrayvid["vidcreator"][i];?>"/>

Я довольно новичок в JS, а также в stackru. Не знаю, поможет ли это вам, но пробовали ли вы следующее?

Ex. 1

  • Есть идентификаторы для ваших метатегов - проверено

    <meta name="DC.Source" id="videdsource" />
    <meta name="DC.Description" id="metadesv" />
    <meta name="DC.Creator" id="videdcreator" />
    
  • Триггер
 object.onclick=changeTags(); 
  • Функция JS

     function changeTags(){
           $("# Videdsource") атр ("содержание","yourlink").
           $("#metadesv").attr("content","Самое классное видео");
           $("#videdcreator").attr("content","Chuck Norris");
        } 

Это тебе как-нибудь помогает?

Другие вопросы по тегам