Наличие проблемы с помощью jQuery для установки значений метатега [дубликат]

12
задан Community 23 May 2017 в 12:11
поделиться

2 ответа

Вы можете сделать это, не самое чистое, но то, что вы пытаетесь сделать, довольно странно, поэтому нет лучшего способа справиться с этим:

var mt = $('meta[name=some-name]');
mt = mt.length ? mt : $('<meta name="some-name" />').appendTo('head');
mt.attr('content', 'some value');

Условное выражение здесь проверяет . length, который равен 0 или false, если не найден, если это так, мы создаем элемент и добавляем его в head, независимо от того, был ли он добавлен или изначально найден, mt устанавливается в с этим именем сейчас, и вы можете установить атрибут.

12
ответ дан 2 December 2019 в 06:25
поделиться

Используя код Ника, я создал функцию для настройки метатега, создавая при необходимости. Если это будет полезно для кого-то ...

    function setOrCreateMetaTag(metaName, name, value) {
        var t = 'meta['+metaName+'='+name+']';
        var mt = $(t);
        if (mt.length === 0) {
            t = '<meta '+metaName+'="'+name+'" />';
            mt = $(t).appendTo('head');
        }
        mt.attr('content', value);
    }

В качестве мета-имени чаще всего можно предположить, что это «имя», но мне также нужно установить «свойство», поэтому функция должна обрабатывать мета-имя.

6
ответ дан 2 December 2019 в 06:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: