扫码关注官方订阅号
代码如下,我封装了一个classname方法,为什么console不到box,显示undifined
百度遮罩拖拽 登陆 登陆通行证 忘记密码 登陆 立即注册
登陆
认证高级PHP讲师
两个错误
for(var i=0;i<oLis.legnth;i++){ 这里拼写错误,应该是 oLis.length
for(var i=0;i<oLis.legnth;i++){
oLis.length
return arr; 应该放在 for 的外面
return arr;
for
另外,建议你用 filter 和 classList.contains(),看起来简洁一点
filter
classList.contains()
function getElementsByClassName(className, parent) { var oParent = parent ? document.getElementById("parent") : document; var oLis = oParent.getElementsByTagName("*"); return [].filter.call(oLis, function(e) { return e.classList.contains(className); }); }
题主标题少了个s?
for(var i=0;i<oLis.legnth;i++){ if(oLis[i].className==className){ arr.push(oLis[i]) }; return arr; // Error:由于是for循环遍历,不管if语句是否执行,该for循环只执行一次 }
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
两个错误
for(var i=0;i<oLis.legnth;i++){这里拼写错误,应该是oLis.lengthreturn arr;应该放在for的外面另外,建议你用
filter和classList.contains(),看起来简洁一点题主标题少了个s?