解决IE浏览器兼容性问题:“JSON”未定义
来源:互联网 发布:oecd怎么下载数据啊 编辑:程序博客网 时间:2024/06/05 16:33
问题起因:
将JavaScript对象类型的参数通过JSON.stringify转换成字符串传递时,IE6、7、8会报:“JSON”未定义 的错误。错误分析:
JSON是包含在JScript 5.8引擎中,而为了向下兼容ie8只有在文档模式是”Internet Explorer 8 Standards”的时候才使用JScripte 5.8,其他时候使用JScripte 5.7特性。因此如果文档模式没有声明为”Internet Explorer 8 Standards”,ie8是找不到JSON对象的。因为没有兼容到ie6/7,所以必然在ie6/7中,JSON会出现未定义的问题。解决方案:
有两种解决方案:
1.通过在html文件的head头内引入json2.js文件来解决(万能方法):
- json2.js作用:chrome浏览器等现代浏览器中存在JSON全局变量。这个变量有两个方法stringify(将js对象转化成json字符串)和parse(将json字符串转化成js对象)。这两个方法在js对象和json字符串转化过程中很有用。但是IE等老旧浏览器中没有这个全局变量。json2.js的作用就是:判断是否有全局变量JSON,如果没有就创建它。
- json2.js下载地址:https://github.com/douglascrockford/JSON-js2.声明”Internet Explorer 8 Standards”模式(不需要兼容到ie6/7):
方法如下:
在文档头添加<meta http-equiv="X-UA-Compatible" content="IE=8" >
使用<!DOCTYPE>
来声明文档
- 解决IE浏览器兼容性问题:“JSON”未定义
- 判断ie浏览器版本,解决浏览器兼容性问题
- 解决ie模式下JSON未定义
- 条件注释解决ie浏览器的兼容性问题
- 解决css firefox火狐浏览器IE浏览器下的兼容性问题
- ie json未定义
- 解决IE浏览器不支持console,报错未定义问题
- IE浏览器的兼容性问题
- IE浏览器的兼容性问题
- ie浏览器兼容性问题
- IE浏览器兼容性问题
- IE浏览器兼容性问题解决方法
- IE浏览器兼容性问题
- 解决在IE下“JSON”未定义的问题
- 解决IE浏览器之间的兼容性问题 IE7.JS IE8.JS
- 解决IE浏览器之间的兼容性问题 IE7.JS IE8.JS
- IE和火狐等浏览器关于 的兼容性问题解决
- 解决IE兼容性问题
- caffe MNIST手写数字识别例程
- 51Nod 1073 约瑟夫环(数学解决)
- ios plist 权限访问大全
- HorizontalScrollView头部滑动
- ${pageContext.request.contextPath} :JSP取得绝对路径方法
- 解决IE浏览器兼容性问题:“JSON”未定义
- 微机原理之八大通用寄存器
- Unity低级本地插件接口--Low-level Native Plugin Interface
- ElemType是什么?
- NIO 02 阻塞式和非阻塞式[Socket]
- 如何实现一个线程安全的map?
- 安卓的4种动画
- express获取表单中的文件和其他数据(enctype=multipart/form-data)
- ArcGIS体系介绍