Manchmal kommt es vor, dass man ein spezielles Meta Value braucht und es auslesen will. Wie macht man das? Es gibt ja kein spezielles getElementByMetaName oder getElementByMetaProperty. Bis jetzt! Den wir erstellen uns die Funktion mal selbst. Getreu dem Motto: „Ist das Mädel noch so lieb, Handbetrieb bleibt Handbetrieb!“.
Ich stelle Euch drei Varainten vor:
function getMetaContentByName(selector, key) {
if(selector.length == 0) {console.error(“expect two Property. Given nothing or one!“);return false;}
if(key.length == 0) {console.error(“expect Property. Given one!“);return false;}
metas = document.getElementsByTagName("meta")
for (let i = 0; i<t.length;i++) {
if (t[i].getAttribute(selector) == key)
{
return t[i].getAttribute("content");
break;
}
console.log(i);
}
}
Oder
function getMetaContentByName(selector, key) {
let metas = document.getElementsByTagName("meta")
// convert HTMLCollection to an Array
let _array = Array.from(metas);
let _result = t1.filter(function(meta) {
if(meta.getAttribute(selector)) {
if (meta.getAttribute(selector) == key) {
return meta;
}
});
return _result.length >0 ? _result[0].getAttribute("content") : null;
}
Oder
document.querySelectorAll( "meta[name='twitter:title'" )[0].getAttribute("content")
Falls Ihr andere Wege kennt, dann schreibt mir über Kommentar. Grüße!