transport.js和jquery沖突問題的解決方法
問題原因:/js/transport.js 文件
Object.prototype.toJSONString = function () {**************}
大概 580行到590行之間 這個句用于格式化json,他重寫了object的結構,導致于js框架沖突,如果要解決需要把這段代碼注釋掉,然后用別的方式替換。
我是將所有用到*.toJSONString的地方,替換成一個函數(shù),例如:
/js/common.js 29行
Ajax.call(‘flow.php?step=add_to_cart', ‘goods=' + goods.toJSONString, addToCartResponse, ‘POST', ‘JSON');
替換成:
Ajax.call(‘flow.php?step=add_to_cart', ‘goods=' + obj2str(goods), addToCartResponse, ‘POST', ‘JSON');
obj2str函數(shù)如下:
function obj2str(o){
var r = [];
if(typeof o ==”string”) return “\”"+o.replace(/([\'\"\\])/g,”\\$1″).replace(/(\n)/g,”\\n”).replace(/(\r)/g,”\\r”).replace(/(\t)/g,”\\t”)+”\”";
if(typeof o ==”undefined”) return “undefined”;
if(typeof o == “object”){
if(o===null) return “null”;
else if(!o.sort){
for(var i in o)
r.push(“\”"+i+”\”"+”:”+obj2str(o[i]))
r=”{“+r.join()+”}”
}else{
for(var i =0;i<o.length;i++)
r.push(obj2str(o[i]))
r=”["+r.join()+"]”
}
return r;
}
return o.toString();
}
大概這樣就可以了,可能還有些腳步錯誤需要處理,您自己體會下 , 這只是個解決方法,并不一定適用您的網(wǎng)站。
我注釋了下面這一段
/*
Object.prototype.toJSONString = function () {
……
// Join all of the fragments together and return.
a.push(‘}');
return a.join(”);
};
*/
相關文章
D3.js實現(xiàn)餅圖,環(huán)圖,玫瑰圖的繪制
這篇文章主要為大家介紹了如何利用D3.js中的d3.pie和d3.arc實現(xiàn)餅圖、環(huán)圖和玫瑰圖的繪制,文中的實現(xiàn)方法講解詳細,感興趣的可以嘗試一下2022-11-11
JavaScript引用類型之基本包裝類型實例分析【Boolean、Number和String】
這篇文章主要介紹了JavaScript引用類型之基本包裝類型,結合實例形式分析了javascript中Boolean、Number和String三種基本包裝類型的基本用法與相關操作注意事項,需要的朋友可以參考下2018-08-08
網(wǎng)頁實時顯示服務器時間和javscript自運行時鐘
如果每秒通過ajax加載服務器時間的話,就會產(chǎn)生大量的請求,于是打算使用js 來解決這個需求2014-06-06
在for循環(huán)中l(wèi)ength值是否需要緩存
這篇文章主要介紹了在for循環(huán)中l(wèi)ength值是否需要緩存,需要的朋友可以參考下2015-07-07

