innerHTML 和 getElementsByName 在IE下面的bug 的解决


Posted in Javascript onApril 09, 2010

比如有这样一个问题。

<div id="playlist"> 
</div>

在这div 中,加入一个播放吗列表。这列表用innerHTML 加入。
var plst = null; 
plst = player.getPlaylist(); 
if (plst) { 
var txt = ''; 
for(var i in plst) { 
txt += '<a name="fv_item_a_' + i + '"></a><div class="fv_item" id="fv_item_'+ i +'"><div class="playing_bg" name="playing_bg"></div>'; 
txt += '<div class="playing" name="playing">正在播放...</div>'; 
txt += '<img src="' + plst[i].image + '" width="80" height="50" class="fv_playlist_img" />'; 
txt += '<p class="fv_playlist_title"> ' + plst[i].title + ' </p>'; 
txt += "</div>"; 
} 
var obj= document.getElementById("playlist"); 
if (obj) { 
obj.innerHTML = txt; 
} 
}

中间的复杂代码不用去管了,现在我要把name 为 playing 的 div 取出来。很容易想到用
getElementsByName
但是,非常奇怪的是,在ie 下面 就是 取不到。getElementById 完全可以用。
下面是一个不错的解决方案:
function GetElementsByName(tag, name) { 
var elem = document.getElementsByTagName(tag); 
var arr = []; 
var index = 0; 
var l = elem.length; 
for(var i = 0; i < l; i++) 
{ 
var att = elem[i].getAttribute("name"); 
if(att == name) { 
arr[index++] = elem[i]; 
} 
} 
return arr; 
}

改成这个函数,就可以取了。只是要多一个参数了。
不知道博友们还有没有其他的解决方案,这个解决方案不是很完美。一定要在评论里面留言一下。
Javascript 相关文章推荐
js的写法基础分析
Jan 17 Javascript
js原生态函数中使用jQuery中的 $(this)无效的解决方法
May 25 Javascript
JS日期和时间选择控件升级版(自写)
Aug 02 Javascript
jQuery中:header选择器用法实例
Dec 29 Javascript
JS函数定义方式的区别介绍
Mar 22 Javascript
jQuery实现iframe父窗体和子窗体的相互调用
Jun 17 Javascript
HTML5+Canvas调用手机拍照功能实现图片上传(上)
Apr 21 Javascript
js原生日历的实例(推荐)
Oct 31 Javascript
Bootstrap模态对话框用法简单示例
Aug 31 Javascript
jquery拖拽自动排序插件使用方法详解
Jul 20 jQuery
vue-socket.io接收不到数据问题的解决方法
May 13 Javascript
解决在Vue中使用axios POST请求变成OPTIONS的问题
Aug 14 Javascript
Javascript string 扩展库代码
Apr 09 #Javascript
JavaScript 设计模式之组合模式解析
Apr 09 #Javascript
跟着Jquery API学Jquery之一 选择器
Apr 07 #Javascript
基于JQuery的cookie插件
Apr 07 #Javascript
JQuery为textarea添加maxlength属性的代码
Apr 07 #Javascript
JavaScript和JQuery实用代码片段(一)
Apr 07 #Javascript
jquery 学习笔记一
Apr 07 #Javascript
You might like
PHP操作MySQL中BLOB字段的方法示例【存储文本与图片】
2017/09/15 PHP
PHP实现的贪婪算法实例
2017/10/17 PHP
PHP性能分析工具xhprof的安装使用与注意事项
2017/12/19 PHP
推荐:极酷右键菜单
2006/11/29 Javascript
JQuery 学习笔记 选择器之四
2009/07/23 Javascript
不要在cookie中使用特殊字符的原因分析
2010/07/13 Javascript
javascript中全局对象的isNaN()方法使用介绍
2013/12/19 Javascript
让jQuery与其他JavaScript库并存避免冲突的方法
2013/12/23 Javascript
nodejs中使用monk访问mongodb
2014/07/06 NodeJs
js判断浏览器类型及设备(移动页面开发)
2015/07/30 Javascript
zepto中使用swipe.js制作轮播图附swipeUp,swipeDown不起效果问题
2015/08/27 Javascript
js+css简单实现网页换肤效果
2015/12/29 Javascript
Bootstrap页面布局基础知识全面解析
2016/06/13 Javascript
js严格模式总结(分享)
2016/08/22 Javascript
jQuery实现简单的tab标签页效果
2016/09/12 Javascript
JSON对象 详解及实例代码
2016/10/18 Javascript
jQuery实现鼠标跟随效果
2017/02/20 Javascript
JS表格组件神器bootstrap table使用指南详解
2017/04/12 Javascript
浏览器调试动态js脚本的方法(图解)
2018/01/19 Javascript
NodeJs 文件系统操作模块fs使用方法详解
2018/11/26 NodeJs
解决 viewer.js 动态更新图片导致无法预览的问题
2019/05/14 Javascript
javascript 数组(list)添加/删除的实现
2020/12/17 Javascript
[54:41]2018DOTA2亚洲邀请赛3月30日 小组赛B组 VGJ.T VS paiN
2018/03/31 DOTA
python 对dataframe下面的值进行大规模赋值方法
2018/06/09 Python
浅谈Python2之汉字编码为unicode的问题(即类似\xc3\xa4)
2019/08/12 Python
python pycharm的安装及其使用
2019/10/11 Python
Python:slice与indices的用法
2019/11/25 Python
Django框架models使用group by详解
2020/03/11 Python
win10从零安装配置pytorch全过程图文详解
2020/05/08 Python
python 绘制场景热力图的示例
2020/09/23 Python
Kmeans均值聚类算法原理以及Python如何实现
2020/09/26 Python
中学生自我评价范文
2014/02/08 职场文书
镇人大副主席民主生活会对照检查材料思想汇报
2014/10/01 职场文书
2014幼儿园小班工作总结
2014/11/10 职场文书
个人工作能力自我评价
2015/03/05 职场文书
人物搭配车车超萌联名预备中 【咒术迴战】 ⨯ 【天竺鼠车车】 展开合作
2022/04/11 日漫