关于设置X-UA-Compatible来设置IE浏览器兼容模式时无效问题

15 篇文章 0 订阅
6 篇文章 0 订阅

本人在用一SuperMap的产品IClientForJs时,遇到一个问题,描述如下:

在一个SuperMap.Layer.Vector上有270个SuperMap.Feature.Vector,
从这270个Vector里通过调用removeFeatures方法删除7、8个要素,
在IE9浏览器下执行速度很慢,大约需要3秒钟左右;
在火狐和谷歌浏览器下执行正常速度很快。
删除时的代码如下:
/** 气泡未选中事件 */
function onFeatureUnselect(feature){
if(popup != undefined){
map.removePopup(popup);
popup.destroy();
popup = undefined;
}
//如果有救援报告信息点显示,则把救援报告点移除
if(rescueRptfeatures != undefined){
/**
* 就是下面这句代码执行特别慢,vectorLayer里有270个要素,rescueRptfeatures里有大约7、8个要素,
* 从vectorLayer里移除这7、8个要素数组时,在IE9浏览器中,执行特别慢,大约2、3秒。
*/
vectorLayer.removeFeatures(rescueRptfeatures);
rescueRptfeatures = undefined;
}
if(_popup != undefined){
map.removePopup(_popup);
_popup = undefined;
}
}

向IClient的支持咨询后,支持给出的意见是把浏览器的文档模式设置成IE9标准模式。这时就需要在jsp页面里对文档模式进行设置。

百度后得知使用:<meta http-equiv="X-UA-Compatible" content="IE=9"> ,可对IE设置文档模式,可是本人在页面加上此代码后仍不起作用。

来回调整代码,删减代码进行排查测试,后来发现是因为我当前jsp页面引入了别的子jsp页面,在子jsp页面里需要加上<!DOCTYPE HTML>。

这样,默认IE的文档模式就是IE9标准模式了。即使不设置<meta http-equiv="X-UA-Compatible" content="IE=9"> 也是有效的。

总结,在jsp里设置浏览器的文档模式为IE9标准模式时,可以直接写<!DOCTYPE HTML>即可,但要求该jsp及其所有的子jsp页面都要加上<!DOCTYPE HTML>,

否则,将不起作用。

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值