我想知道document
,HTMLDocument
,Document
,Element
和Node
之间的关系,以实现IE8的getElementsByClassname
方法..但每当我尝试这些方法时,它都不起作用:document.getElementsByClassname = function(){}
,HTMLDocument.getElementsByClassname=function(){}
或
Element.prototype.getElementsByClassname=function(){}
。
if(!Element.getElementsByClassname) {
Element.prototype.getElementsByClassname = function(arg){
var cssSelector;
var parentElement = this.document||this.documentElement.document||document;
var queryElements = null;
if(arg){
if(arg.indexOf(' ')>0){
cssSelector = '[class~="'+arg+'"]';
}else{
cssSelector = "."+arg;
}
queryElements = parentElement.querySelectorAll(cssSelector);
}
return queryElements;
}
}
var elems = document.getElementsByClassname('limit').item(0);
var triangles = elems.getElementsByClassname('triangle');
debugger;