将nodeList转换为数组(兼容性)
将nodeList转换为数组(兼容性)
function arrayofNodes(nodes){ var arr = null; try{ arr = Array.prototype.slice.call(nodes,0); }catch(ex){ arr = new Array(); for(var i=0,len=nodes.length; i < len; i++){ arr.push(nodes[i]); } } return arr; }
在IE8以前的浏览器中nodes非JScript对象而是COM对象,所以
Array.prototype.slice.call(nodes,0);
会出错
需要catch来捕获错误,然后手动创建数组
posted on 2017-07-06 11:48 CNundefined 阅读(414) 评论(0) 编辑 收藏 举报