商务通更换快商通之后代码怎么修改最省事
答案是有的,跟我一起来操作吧
打开网站公用的js文件,把下方的代码粘贴进去,稍作修改上传就可以了。注意这些代码一些要替换成您的聊天软件代码,不然您的网站可就是白白挂了别人的快商通,帮别人咨询了。这有点像艾洛普那种打入诺基亚内部的木马了,所以这一点您一定得注意。
document.writeln("<script type=\'text/javascript\' src=\'https://viph19-hztk11.kuaishang.cn/bs/ks.j?cI=你的cl编码&fI=你的fi编码\' charset=\'utf-8\'></script>");
var onKST = function (text) {
//请替换成"生成代码 - 链接地址" 中的链接地址,不要去其他地方复制
ksChatLink = 'https://viph19-hztk11.kuaishang.cn/bs/im.htm?cSource=1&cas=你网站的cas编码&fi=你的fi编码';
/**
* 若强行打开新窗口,则放开设置,不设置则手机不打开新窗口,pc打开新窗口,此设置只对当前自定义事件有效
* 若想全局生效,包括快商通默认的打开聊天窗口事件,则将此变量ksUserDefinedOpenNewChatWin定义在ks.js前即可
*/
//var ksUserDefinedOpenNewChatWin=true;
//验证参数是否存在
function checkQueryString(params, name) {
if (!params)return false;
return new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i").test(params);
}
//获取URL参数值
function getQueryString(url, name) {
var index = url.indexOf('?');
if (index == -1)return '';
url = url.substr(index + 1, url.length);
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = url.match(reg);
if (r != null) return unescape(r[2]);
return '';
}
var openNewChatWin;
var localArr = ksChatLink.split("?");
localArr.push("");
if (typeof ksUserDefinedOpenNewChatWin != 'undefined' && ksUserDefinedOpenNewChatWin == true) {
openNewChatWin = true;
} else if (checkQueryString(localArr[1], 'ism')) {
openNewChatWin = false;
} else {
openNewChatWin = true;
}
//打开快商通聊天窗口链接
function ksOpenLink() {
var appendTailUrl = '';
try {
var cas = getQueryString(ksChatLink, 'cas');
if (cas) {
var vi = '';
var dc = document.cookie.match(new RegExp('(^| )' + cas + '_KS_' + cas + '=([^;]*)(;|$)'));
if (dc != null) {
vi = unescape(dc[2]);
}
if (vi) {
appendTailUrl += '&vi=' + vi;
}
}
} catch (e) {
}
var ref = "";
try {
if (opener.document.referrer.length > 0) {
ref = opener.document.referrer;
}
} catch (e) {
ref = document.referrer;
}
if (!ref || ref.length == 0) {
ref = document.referrer;
}
//对话网址
appendTailUrl += '&dp=' + encodeURIComponent(window.location.href);
//访客来源
if (ref)appendTailUrl += '&ref=' + encodeURIComponent(ref);
//对话标识
if (text)appendTailUrl += '&sText=' + encodeURIComponent(text);
if (ksChatLink.indexOf('?') == -1) {
appendTailUrl = appendTailUrl.substring(1) + '?';
}
ksChatLink += appendTailUrl;
//根据openNewChatWin设置打开聊天窗口
if (!openNewChatWin) {
window.location.href = ksChatLink;
} else {
var ksWin = window.open(ksChatLink, '_blank');
if (ksWin) {
try {
ksWin.focus();
} catch (e) {
} //将焦点定位到聊天窗口
}
}
}
//如果快商通代码有加载完成,则使用快商通默认的打开聊天窗口事件,否则使用自定义的打开事件
if (typeof KS != 'undefined') {
var p = {};
if (text)p['sText'] = text;
if (openNewChatWin)p['oTarget'] = '_blank';
try {
if (typeof KS.openChatWin == 'function') {
KS.openChatWin(p);
} else if (typeof KS.openChatLink == 'function') {
KS.openChatLink(p);
} else {
ksOpenLink();
}
} catch (e) {
ksOpenLink();
}
} else {
ksOpenLink();
}
};
//兼容商务通的函数
function openZoosUrl(){
return onKST();
}
这样添加之后,各个专题和网页的脚本和页面内容都不需要再更改,使用起来省时间,方便多了