使用javascript检查网页上是否存在元标记
我想检查网页上是否存在元标记 我试过这个:使用javascript检查网页上是否存在元标记,javascript,html,meta-tags,Javascript,Html,Meta Tags,我想检查网页上是否存在元标记 我试过这个: document.getElementsByTagName("meta[http-equiv:Content-Type]").length 但这总是返回0。我该怎么做?我想通过使用javascript来实现这一点。不是jQuery var x = document.querySelector('meta[http-equiv="Content-Type"]'); console.log(x); x有一个meta标记的引用(如果找到)。否则它将是nu
document.getElementsByTagName("meta[http-equiv:Content-Type]").length
但这总是返回0。我该怎么做?我想通过使用javascript来实现这一点。不是jQuery
var x = document.querySelector('meta[http-equiv="Content-Type"]');
console.log(x);
x
有一个meta标记的引用(如果找到)。否则它将是null
,因此如果(x){
如果querySelectorAll
不受支持(较旧的浏览器),这里有一种方法
var metas=document.getElementsByTagName('meta');
var发现;
对于(var i=0;i您甚至不需要检查长度,只需使用querySelector
,并确保它返回的值不是null就足够了。嗯……我已经在Chrome和IE9上进行了测试,如果没有,我就得到null。@kei-Oh,你是说没有“All”这实际上不适用于此。如果页面上的另一个元标记位于我们要查找的具有属性的元标记之前,它将失败。@m59否,而不是在选择器已在测试属性值是否存在的情况下。是的,我在使用querySelector
时无意中将.length
留在了我正在记录的东西上,这是错误的是未定义的。我认为这是元素本身。我确实发现相当奇怪的=D
var metas = document.getElementsByTagName('meta');
var found;
for (var i=0; i<metas.length; ++i) {
var meta = metas[i];
if (meta.getAttribute('http-equiv') === "Content-Type") {
found = meta;
break;
}
}
console.log(found);