当前位置: 首页 > article >正文

新发的日常小实验——使用IETester测试不同IE版本的浏览器,测试网页JS的兼容性(console未定义兼容测试)

文章目录

      • 一、痛点:IE兼容测试
      • 二、关于IETester
      • 三、IETester下载
      • 四、写个html测试js的console接口
      • 五、测试结果
      • 六、js兼容处理

一、痛点:IE兼容测试

之前使用.NetWinform桌面应用框架做了一个PC版的迷你浏览器(使用IE内核),方便拉起网页支付。
有用户反馈打开支付页面报了如下的错:“console”未定义
在这里插入图片描述
到底是多么老旧的IE内核console都未定义,查了一下,解决办法是自己定义一个window.console。例:

window.console = window.console || (function () {var c = {}; c.log = c.warn = c.debug = c.info = c.error = c.time = c.dir = c.profile= c.clear = c.exception = c.trace = c.assert = function () { };return c;
})();

现在,我要搞个比较老旧的IE内核的浏览器进行兼容测试
要安装IE 6,得先卸载我本机的IE 11,测试完我还得重新装回我的IE 11,真是太麻烦了。
下文我就推荐一个神器给大家:IETester

二、关于IETester

IETester是一个ie浏览器多版本测试工具,可能很方便在ie5.5,ie6,ie7,ie8,ie9,ie10,ie11切换,只安装一个软件,解决Nie浏览器的问题,满足大部分IE浏览器兼容性的测试,具有Office 2007的可视化界面。
支持 Windows 7,Vista and XP,Windows 8 desktop系统,并且有中文,英文等多国语言支持。
注:IETestWin10兼容性不好,所以如果你是Win10,可能IETest中很多IE版本无法测试。
在这里插入图片描述

三、IETester下载

http://www.ietester.cn/

四、写个html测试js的console接口

console_test.html脚本,如下

<!DOCTYPE html>
<html>
<body><h1>IE console test</h1><script>
console.log("hello");
</script></body>
</html>

五、测试结果

经过测试,发现ie5.5、ie6、ie7、ie8都会出现“console”未定义。

六、js兼容处理

修改console_test.html脚本,如下

<!DOCTYPE html>
<html>
<body><h1>IE console test</h1><script>
window.console = window.console || (function () {var c = {}; c.log = c.warn = c.debug = c.info = c.error = c.time = c.dir = c.profile= c.clear = c.exception = c.trace = c.assert = function () { };return c;
})();console.log("hello");
</script></body>
</html>

最终可以在ie5.5、ie6、ie7、ie8正常运行了。

http://www.lryc.cn/news/2419679.html

相关文章:

  • cpio命令的常用方法
  • stm32串口反相输出 SP3232输出反相解决办法
  • FindWindowEx 遍历所有窗口
  • AV1编码各种浏览的版本支持
  • 网安概论(三)
  • 85m gamer主板acpi驱动_关于网卡驱动的问题
  • Python实现经典吃豆豆游戏教程:重温童年经典,学习Python游戏开发,附带完整源码
  • Android使用bit.ly的api获取url 短连接
  • 转贴--理解LPCTSTR
  • 什么是UBB
  • 机器学习----决策树分析
  • IDEA官网进不去解决方法
  • 智能终端安全:应用安全技术—移动互联网信息安全解决方案(上)
  • java cloneable 深拷贝_Java中的Cloneable接口与深拷贝、浅拷贝
  • 版本控制系统
  • POSTFIX邮件系统搭建
  • 获取北京标准时间
  • X86和X64的区别
  • tex中enumitem 宏包对itemize环境的调整
  • 内存学习(二):物理地址空间虚拟地址空间布局
  • Android ContentResolver的使用
  • Android 简单定位----Google Location Service的使用
  • Matlab中function函数的使用
  • 文件操作函数(C语言)!
  • tinyxml在linux和windows下的编译及使用详解
  • PowerManager简介
  • Flutter Ink,InkWell,InkResponse水波纹实现(2.3)
  • fiddler4使用方法以及相关抓包分析
  • 【同花顺函数汇总】
  • Parse error: syntax error, unexpected ''解决办法