搜索

首页  >  问答  >  正文

setAttribute("",""); 放在for循环中,报错

var path = document.getElementsByTagName("path");
    (function fillCss(){    for(var i in path){
      path[i].setAttribute("fill","none");
      path[i].setAttribute("stroke","black");
      path[i].setAttribute("stroke-width","0.5");
    }
    })();

样式被执行但是报错:

Uncaught TypeError: path[i].setAttribute is not a function(…)


高洛峰高洛峰2958 天前522

全部回复(1)我来回复

  • 三叔

    三叔2016-11-08 14:02:11

    因为path是一个类数组,内部包含一个length属性,这个length属性也是参与for in遍历的,然而他并没有setAttribute,所以此处会报错

    回复
    0
  • 取消回复