小编H. *_*hao的帖子

使用 hasAttribute() get TypeError: hasAttribute is not a function

我尝试使用JavaScript找出HTML文件中<img>没有“样式”属性的元素的数量。

我的解决方案:找出<img>标签数为“ imgCount ”,然后获取<img>“style”属性为“ imgStyCount ”的标签数。之后,使用“ imgCount ”减去“ imgStyCount ”得到我想知道的最终结果。

但是,出了点问题。我的浏览器一直告诉我

类型错误:document.getElementsByTagName(...)[K].hasAttribute 不是函数

在 if 语句中。奇怪的是,alert(document.getElementsByTagName("img")[k].hasAttribute("style")显示 if 语句结果为 TRUE。它怎么可能不是函数并给出真实值?

var imgCount = 0;

var imgStyCount = 0;

var result;

for (k in document.getElementsByTagName("img")) {

  if (document.getElementsByTagName("img")[k].hasAttribute("style") == true) {

    alert(document.getElementsByTagName("img")[k].hasAttribute("style"));

    console.log("    <img> =: ", document.getElementsByTagName("img")[k].style);

    imgStyCount++;

  }

  imgCount++;

}
result = imgCount - imgStyCount;
Run Code Online (Sandbox Code Playgroud)
<img height="150px" src="Http://flax.nzdl.org/images/ngf.jpeg" style="vertical-align:middle;margin-right:20px;" />
<img src="Http://flax.nzdl.org/images/abc.jpg" />
<img src="Http://flax.nzdl.org/images/fbc.jpg" />
<img src="Http://flax.nzdl.org/images/agc.jpg" /> …
Run Code Online (Sandbox Code Playgroud)

html javascript

2
推荐指数
1
解决办法
2万
查看次数

标签 统计

html ×1

javascript ×1