innerHTML和getElementsByName在IE下面的bug的解决
BUG 解决 IE 下面 innerHTML getElementsByName
2023-06-13 09:14:17 时间
比如有这样一个问题。
复制代码代码如下:
<divid="playlist">
</div>
在这div中,加入一个播放吗列表。这列表用innerHTML加入。
varplst=null;
plst=player.getPlaylist();
if(plst){
vartxt="";
for(variinplst){
txt+="<aname="fv_item_a_"+i+""></a><divclass="fv_item"id="fv_item_"+i+""><divclass="playing_bg"name="playing_bg"></div>";
txt+="<divclass="playing"name="playing">正在播放...</div>";
txt+="<imgsrc=""+plst[i].image+""width="80"height="50"class="fv_playlist_img"/>";
txt+="<pclass="fv_playlist_title">"+plst[i].title+"</p>";
txt+="</div>";
}
varobj=document.getElementById("playlist");
if(obj){
obj.innerHTML=txt;
}
}
中间的复杂代码不用去管了,现在我要把name为playing的div取出来。很容易想到用
getElementsByName
但是,非常奇怪的是,在ie下面就是取不到。getElementById完全可以用。
下面是一个不错的解决方案:
functionGetElementsByName(tag,name){
varelem=document.getElementsByTagName(tag);
vararr=[];
varindex=0;
varl=elem.length;
for(vari=0;i<l;i++)
{
varatt=elem[i].getAttribute("name");
if(att==name){
arr[index++]=elem[i];
}
}
returnarr;
}
改成这个函数,就可以取了。只是要多一个参数了。
不知道博友们还有没有其他的解决方案,这个解决方案不是很完美。一定要在评论里面留言一下。
相关文章
- 开发说这不是BUG,怎么办
- 【Bug解决】Win10安装pycocotools报错
- ESBuild压缩CSS引发的一个兼容性Bug的解决姿势
- 致命bug,7岁男童被夹断手指!
- ElementUI响应式布局bug、其中中el-col-sm-0会导致响应式布局失效的解决方法
- 解决tp5时间区间连表查询报错的问题 会提示找不到表,经测试只有时间连表查询有bug,别的都没事
- 解决MySQL无法删除数据的Bug(mysql无法删除数据)
- Win10 21H1改善文件管理器体验 修复遗留的诸多BUG
- 微软修复Outlook无法查看或创建电子邮件的Bug
- #Bug何其多#一个macOS Catalina的新bug可能会删掉你的电子邮件
- KDE Plasma 5的第二个bug修复版本发布,带来了很多的改变
- IE无法连接Oracle数据库的解决方法(ie无法跳转oracle)
- 破解Oracle数据库修复Bug问题(oracle修改bug)
- Oracle Bug查找新姿势终极突破(oracle bug查找)
- Oracle Bug文档之调查这些bug有何秘密(oracle bug文档)
- IE缓存策略的BUG的解决方法
- Firefox2中输入框丢失光标bug的解决方法
- Firefox返回时Iframe的显示Bug的解决方法
- jQuery中isFunction方法的BUG修复
- firefox下rowspan+border+border-collapse的bug
- IE6图片加载的一个BUG解决方法
- 基于IE下ulli互相嵌套时的bug,排查,解决过程以及心得介绍
- js原生appendChild的bug解决心得分享
- jqueryvalidate在ie8下的bug解决方法