【文件属性】:
文件名称:ECShop中transport.js与jQuery冲突
文件大小:5KB
文件格式:ZIP
更新时间:2018-01-12 03:49:12
修改
1、加入JSON2.js文件
原因很简单,transport修改Object是为了加入支持JSON的方法。所以这里用JSON官网在javascript语言上提供的json2.js支持。
具体下载地址:https://github.com/douglascrockford/JSON-js
2、修改transport.js
2.1 注释掉重写object的方法,具体搜索
if ( ! Object.prototype.toJSONString) {
这一段代码,然后把里面的内容全部注释掉。(参考:注释掉496-737行)
2.2 加入新的JSON支持方法
function objToJSONString(obj, filter){
return JSON.stringify(obj, filter);
}
function parseObjectToJSON(object, filter){
return JSON.parse(object, filter);
}
也可以看到其实都很简单,都是调用json2.js里面提供的方法,有人觉得不必在这里添加直接调用也可以,但我还是建议做这样的一个适配器在这,因为容易容易表明用意。
2.3 修正AJAX方法
2.3.1 在transport.js搜索params.toJSONString() 改为调用 objToJSONString方法(具体在352行左右)
2.3.2 继续在transport.js搜索result.parseJSON() 改为调用 parseObjectToJSON发那个发(具体在408行左右)
【文件预览】:
json2.js