一直以来,IE对于DOM操作有一些不和谐的地方,烂笔头又来了:
1 Table的问题
在动态新增tr或者td时,createElecment() 一般用appendChild();都不生效,解决办法是用新增tbody, 如
var table=document.createElement("table");
var tbodoy=document.createElement("tbody");
var tr=document.createElement("tr");
var td=document.createElement("td");
table.appendChild(tbody.appendChild(tr.appendChild(td)));
2 innerHTML的问题
在IE中不支持动态的写table的innerHTML,但是支持div或者span的innerHTML动态读写。
3 设置样式问题
内联样式: 如果使用obj.setAttribute("stylename");stylename对应的样式不会生效。解决方法:obj.style.cssText="stylename";
外部样式: obj.setAttribute("class":"className"); calssName对应的外部样式照样不会生效。解决方法:ojb.setAttribute("className","className");
在此提醒一下,在使用一些dojo等框架时,如果遇到有设置class时,如
dojo.create("div",{"class":"style1"},parent,"last")中class一定要用引号。
4 设置属于元素的事件
对于一个文本obj,IE不支持obj.setAttribute("onclick","fun()"),设置它的onclick属性做法如下:obj.onclick=function(){},注意的是:此处需要放一个匿名的函数.
5 动态创建单选按钮
用create和setAttribute()是解决不了问题的。解决方法是:
直接document.createElement("<input type='radio' name='myradio'></input>");来的更痛快一些。
6 最后就是用document判断浏览器是否为ie的一个方法,document.uniqueID, 因为只有ie唯一能识别uniqueID。
以上为总结,待续。
分享到:
相关推荐
在网站开发中不免因为各种兼容问题苦恼,针对兼容问题,其实IE给出了解决方案Google也给出了解决方案 百度也应用了这种方案去解决IE的兼容问题 百度源代码如下 <!Doctype html> ...
IE7.js是一个专门针对Internet Explorer浏览器(特别是IE6和IE7)的兼容性解决方案,它旨在让这些旧版本的IE浏览器表现得更像现代的浏览器,如Firefox、Chrome或Safari。这个工具由Dean Edwards开发,其目标是通过...
这是一个长期解决方案,但可能不适合那些仍然需要支持IE6的网站。 5. **使用PNG-8**:对于不需要多级透明度的图像,可以考虑将PNG-24转换为PNG-8格式,IE6可以正确显示PNG-8的透明效果,尽管颜色层次会受到限制。 ...
解决my97日历控件与IE8的兼容性问题,可以从以下几个方面着手: 1. **回退到旧版本**:首先,可以尝试使用my97日历控件的早期版本,因为这些版本可能还未使用到IE8不支持的特性。 2. **启用IE8的兼容模式**:IE8有...
针对IE浏览器的不兼容性,有以下几种解决方案: 1. 使用渐进增强:这是一种设计策略,首先确保网站的基本功能在所有浏览器中都能正常工作,然后逐步添加对新特性的支持。对于IE,可以先为其他支持CSS3的浏览器提供...
解决这一兼容性问题,涉及到几个关键点:IE8对某些DOM属性支持的差异、HTML元素事件属性的兼容性以及代码执行方式。 IE8不支持`setAttribute`方法来设置事件处理器是产生兼容性问题的核心原因。在标准模式下,IE8及...
以下是针对IE浏览器PNG透明问题的几种解决方案: 1. **CSS滤镜法**:利用CSS滤镜(Filter)属性,我们可以让IE6支持PNG24的透明。例如: ```css .pngFix { behavior: url(iepngfix.htc); /* 需要一个名为iepng...
IE6-IE11 兼容性问题列表及解决办法 作为一名 WEB 前端开发者,了解 IE 浏览器的兼容性问题是非常重要的。在 IE6 到 IE11 的版本更新中,存在许多的变化和改进,这些变化可能会影响到我们编写的前端代码的兼容性。...
为了解决这个问题,我们可以尝试以下几种方法: 1. **启用兼容性视图**:IE11有一个“兼容性视图”模式,可以在该模式下模拟旧版IE的行为。在浏览器的工具菜单中选择“兼容性视图设置”,将网站添加到列表中,看看...
为了解决Vue.js兼容IE的问题,以下是几种解决方案: 1. 使用babel-polyfill 可以通过npm安装babel-polyfill,并在应用的入口文件(如main.js)顶部或打包配置中引入它。在webpack.base.conf.js的entry配置中加入...
IE8的兼容性问题主要源于以下几个方面: 1. **ES5 支持**:ECharts 基于 ES5 特性构建,而IE8仅支持部分ES3特性,不包含像数组的`forEach`、`map`等方法,这可能导致某些功能无法运行。 2. **JSON 支持**:IE8 不...
5. **JavaScript Polyfill**:某些新的JavaScript API在IE8中不可用,如Array的`forEach`方法,可能需要引入polyfill库如es5-shim。 6. **zh-cn.js**:这个文件很可能是Select2的中文语言包,确保正确引用以实现...
5. **使用专为IE兼容设计的插件**:正如标题所提,存在专门解决IE兼容性问题的插件。在这种情况下,ie7.js是一个知名的库,它通过模拟新的DOM方法、修复CSS渲染bug以及提供其他兼容性补丁,帮助提升IE6-8对现代Web...
以上是解决"ie8以下浏览器不兼容jQuery"问题的一些常见方法。在实际开发中,根据项目需求和用户群体,可能需要权衡性能、兼容性和维护成本,选择最合适的解决方案。同时,随着技术的发展,逐渐放弃对过时浏览器的...
总结起来,解决IE6兼容性问题的方法主要包括使用替代方案、JavaScript、条件注释以及手动指定样式值等。尽管这些方法可能会增加开发的复杂度,但对于需要支持老旧浏览器的项目来说,确保跨浏览器兼容性仍然是非常...
本文将详细探讨IE浏览器中的几个常见兼容问题,并提供相应的解决方案。 #### 一、JavaScript操作DOM元素时的问题 在给定的部分内容中提到了一段JavaScript代码: ```javascript var anchors = document....
要使Bootstrap兼容IE8,主要涉及以下几个关键点: 1. **HTML5 doctype**:确保页面使用`<!DOCTYPE html>`声明,这将触发IE8的“标准模式”,而非“quirks模式”。 2. ** respond.js **:Bootstrap使用媒体查询进行...
这就是“IE兼容HTML5的js”所解决的问题。 `html5media`是一个JavaScript库,专门设计用来解决IE浏览器对HTML5 `<audio>` 和 `<video>` 标签的兼容性问题。这个库允许在不支持HTML5原生播放功能的IE浏览器中播放...
在"JS对话框兼容各浏览器尤其兼容ie6"这个主题中,我们将深入探讨如何使用JavaScript和jQuery来创建这样的弹出框,并确保在旧版IE浏览器中的良好表现。 首先,我们需要理解JavaScript的`window.alert()`, `window....