IE8,IE7兼容问题整合

来源:互联网 发布:软件测试的生命周期 编辑:程序博客网 时间:2024/05/29 16:37

最近调IE8以下程序调的想死,掺和着数据处理,各种问题出现,现做出归纳整理。

一、样式上的偏差

这个不多说,主要是用ie的hack解决,具体情境具体分析吧。

二、诡异的ext和html的position问题

上篇文章中提到了iframe页面空白的问题,真的是找了半天才找到原因啊,html的css设置了个position:relative,加上一句position:static\9就行了。由此带来的其他样式上的问题,回到一具体分析。
上文链接: ie7下Ext-3.4打开iframe出现空白的问题

三、JS的问题

ie8以下indexOf方法不支持,加代码(网上copy的):

if (!Array.prototype.indexOf) {    Array.prototype.indexOf = function (elt /*, from*/) {        var len = this.length >>> 0;        var from = Number(arguments[1]) || 0;        from = (from < 0)            ? Math.ceil(from)            : Math.floor(from);        if (from < 0)            from += len;        for (; from < len; from++) {            if (from in this &&                this[from] === elt)                return from;        }        return -1;    };}

还有JSON未定义

引入json2.js,这里就不附代码了,百度一大把。

四、AJAX的缓存问题

ie下做一个操作之后,发现刷新之后的数据还是原来的,只有重启浏览器或新打开一个标签页才能刷新出来正确的数据。当时心里就觉得是缓存的事儿了,百度了一下,在js里加如下jq代码禁止缓存:

$.ajaxSetup({ cache: false })  

五、数据量大的分页问题

数据量大到几万条,分页全部在前端,一开始是很笨的显示隐藏的方法,数据量大,好点的浏览器还卡的不行,到ie更是卡成翔,换成了数据存对象数组,切换页面时动态生成html插入,性能得到提升。

可能待续吧……

原创粉丝点击