
已解决问题
谷歌破碎的希望1用户在2016.04.18提交了关于“长生诀j**ascript getElementsByClassName函数”的提问,欢迎大家涌跃发表自己的观点。目前共有1个回答,最后更新于2025-02-27T09:14:50。希望大家能够帮助她。详细问题描述及疑问:期待您的答案,你无异于雪中送炭,让我感激涕零 !
详细问题描述及疑问:期待您的答案,你无异于雪中送炭,让我感激涕零 !
今天在网上看到的
复制代码代码如下:
vargetEl
if(docume
returndocument.getElementsByClassNam
}else{
node=node||docume
tag=tag||"*";
varclasses=searchClass.split(""
elements=(ta
patterns=[
returnElements=[],
curr
match;
while(--i>=0){
patterns.
}
varj=elements.l
while(--j>=
current=elements[j];
match=false;
for(vark=0,kl=patterns.lengt
match=patterns[k].test(cur
if(!mat
}
if(match)ret
}
returnreturnElements;
}
}
下面是网上其它
DOM中的getEl
复制代码代码如下:
functiongetElements
va
varresult=[];
for(i=0;j=
if(("
result.pu
}
}
returnresult;
}
既然有getElementsByCla
复制代码代码如下:
d
//适用于获取某个h**TML区块**含有某一特定className的所有h**TML元素
this.d=oBox||document;
varchildren=this.d.getElementsByTagName('*')||document.all;
varelements=newArray();
for(varii=0;ii<children.length;ii++){
varchild=children[ii];
varclassNames=child.className.split('');
for(varj=0;j<classNames.length;j++){
if(classNames[j]==className){
elements.push(child);
bre**;
}
}
}
returnelements;
}
document.getElementsByType=function(sTypeValue,oBox){
//适用于获取某个h**TML区块**同属于某一特定type的所有h**TML元素,如:input,script,link等等
this.d=oBox||document;
varchildren=this.d.getElementsByTagName('*')||document.all;
varelements=newArray();
for(varii=0;ii<children.length;ii++){
if(children[ii].type==sTypeValue){
elements.push(children[ii]);
}
}
returnelements;
}
function$(){
varelements=newArray();
for(varii=0;ii<arguments.length;ii++){
varelement=arguments[ii];
if(typeofelement=='string')
element=document.getElementById(element);
if(arguments.length==1)
returnelement;
elements.push(element);
}
returnelements;
}
$Cls=function(s,o){
returndocument.getElementsByClassName(s,o);
};
$Type=function(s,o){
returndocument.getElementsByType(s,o);
};
$Tag=function(s,o){
this.d=o||document;
returnthis.d.getElementsByTagName(s);
};
$Name=function(s){//通过name的方式只能针对整个document而言,不能为其限定范围
returndocument.getElementsByName(s);
};