JavaScript getElementsByClassName方法求解

function getElementsByClassName(node,classname){

if(node.getElementsByClassName){

return node.getElementsByClassName(**classname**);

} else {

var results=new Array();

var elems=node.getElementsByTagName("*");

for(var i=0; i<elems.length; i++) {

if(elems[i].className.indexOf(classname) !=-1) {

results[result.length]=elems[i];

}

}

return results;

}

}

该代码中加粗部分参数是什么意思?getElementsByClassName方法的参数应该是一个字符串,为什么括号内没有引号呢?


慕桂英546537
浏览 604回答 1
1回答

MMTTMM

低版本的ie浏览器不支持getElementsByClassName方法,上面那段代码是封装了一个兼容性良好的getElementsByClassName,各个浏览器版本都可以使用。比如说你要在整个页面中获取元素,第一个参数就是document ,第二个参数是你想要获取的元素的classname 。比如说你要在ul中获取元素,第一个参数就是对ul的引用,这个引用可以通过其他方法例如getElementById或者getElementsByTagName 来得到,第二个参数同上
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript