医院网站建设

当前位置: > 医院网站维护 >

商务通和快商通兼容代码

发布时间:2021-05-10 作者:医院网站制作 关键词:
网站上线之后聊天软件试用过很多种,什么快商通,商务通,换来换去,网页代码也需要改来改去耗费大量时间,有没有什么好方法可以一劳永逸呢?

我们拿快商通替换传统的商务通代码来说,首先登录快商通复制好您的聊天代码

新建一个js文件比方说叫swt.js,在网页底部模板中引用一下,再将下面的代码复制到这个文件里就可以了,然后再点对话就可以点开了

之后百度搜索html转js

用转换好的快商通代码替换下面这行


document.writeln("<script type=\'text/javascript\' src=\'https://viph19-hztk11.kuaishang.cn/bs/ks.j?cI=你的cl编码&fI=你的fi编码\' charset=\'utf-8\'></script>");


然后复制您的直接聊天窗口的链接,替换ksChatLink = 后面的文字

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();
}
责任编辑:医院网站制作
医院网站维护