商务通打开对话窗口容错代码

模板网 2014-09-26

在某些情况下,页面加载商务通JS代码失败,导致访客点击咨询按钮无法进入商务通对话窗口,下面医疗模板库为大家整理了一段代码,可以防止因商务通加载失败导致访客无法打开对话窗口这种情况的发生。

完整代码如下:

复制代码 代码如下:
<script type="text/javascript">
function online() {
    var e = 'anniu';
    if (arguments.length == 1) {
        e = encodeURIComponent(arguments[0]);
    }
    if(typeof openZoosUrl == "undefined"){
        //测试请将该地址替换为自己的商务通地址
        var url = 'http://test.zoossoft.net/LR/Chatpre.aspx?id=test001&lng=cn&rf1=' + encodeURIComponent(document.referrer);
        url = url + '&e=' + e + '&p=' + encodeURIComponent(location.href);
        try{
            window.open(url, 'news' + (new Date()).getTime());
        }catch(e){
            location.href = url;
        }
    }else{
        openZoosUrl('chatwin', '&e=' + e);
    }
    return false;
}
</script>

代码使用说明:

1、实际测试使用时请将代码中的商务通地址替换为自己的 http://test.zoossoft.net/LR/Chatpre.aspx?id=test001

2、之前我们在网站上添加打开商务通对话窗口按钮时一般是像以下这种方式添加的:

<a href="/swt/">咨询在线专家</a> //使用页面跳转的方式

<a href="javascript:;" onclick="openZoosUrl('chatwin','&e=zhuanjia');">咨询在线专家</a> //使用商务通自带打开对话窗口函数,下同。

 <a href="javascript:openZoosUrl('chatwin','&e=zhuanjia')">咨询在线专家</a>

如果使用以上提供代容错代码后,只需要将连接代码修改为以下即可:

<a href="javascript:;" onclick="online('zhuanjia')">咨询在线专家</a>

<a href="javascript:online('zhuanjia')">咨询在线专家</a>

代码原理:

代码只是做了一个判断,判断openZoosUrl函数是否定义,openZoosUrl为商务通自带的打开对话窗口的函数,如果已经定义说明商务通代码正确加载,那么我们就直接调用商务通打开对话框的函数来打开对话框即可;如果该函数未定义,则说明商务通代码加载失败,我们就利用商务通对话窗口链接来打开对话窗口,其中以上提供的代码中包含了获取来路页面地址、当前页面地址的代码,传递给商务通后台,防止轨迹丢失的情况。

相关文章

  1. 商务通跳转仅超链接,怎么用才不会丢轨迹?

    导语 大家都知道,商务通自带一个仅超链接跳转进入对话功能,早期大家常常使用来做直接跳转使用,但后来商务通几次改版后,尤其是移动互联网时代移动商务通使用环境的复杂度增加,仅超链接的滥用或不当使用,引发了很多轨迹来路统计、关键词统计问题,而很多

  2. 商务通默认弹窗重写代码

    商务通重写代码,重写商务通默认的弹窗。实现原理:通过设置定时器,判断是否存在默认的商务通弹窗标签,如果存在则用自定义的代码将其覆盖。 以下为详细代码,其中o.innerHTML为自定义的弹窗代码,可自行修改为自己的代码: 复制代码 代码如下: script func

  3. 商务通隐藏默认邀请框代码

    商务通默认的邀请框如何隐藏,下面提供笔者常用的解决代码: 下面提供的是一个纯JS操作的方法和一个使用jQuery操作的方法,代码原理是判断一个div ID为LRdiv1的标签,通过判断其css样式display是否为none来判断邀请框是否显示,如果为显示我们就将其隐藏起来

  4. 医疗网站商务通弹窗吸引用户点击的几点注意事项

    试想一下, 当我们浏览一个医疗的网站,看一篇文章总是不断的弹出对话框,就会让人烦躁,估计很少有人会有耐心的浏览的。小脑袋竞价软件个人觉得,一个优秀的医疗网站应该能让患者顺畅的查看某些病症信息或者他们想要了解全部的内容。这样才可以提升网站的用

  5. 离线宝ID的两种获取方法

    1、百度推广后台的浏览器URL中 2、登录离线宝(http://lxb.baidu.com/)-样式设置api自定义

随机推荐

  1. 商务通跳转仅超链接,怎么用才不会丢轨迹?

    导语 大家都知道,商务通自带一个仅超链接跳转进入对话功能,早期大家常常使用来做直接跳转使用,但后来商务通几次改版后,尤其是移动互联网时代移动商务通使用环境的复杂度增加,仅超链接的滥用或不当使用,引发了很多轨迹来路统计、关键词统计问题,而很多

  2. 商务通默认弹窗重写代码

    商务通重写代码,重写商务通默认的弹窗。实现原理:通过设置定时器,判断是否存在默认的商务通弹窗标签,如果存在则用自定义的代码将其覆盖。 以下为详细代码,其中o.innerHTML为自定义的弹窗代码,可自行修改为自己的代码: 复制代码 代码如下: script func

  3. 商务通隐藏默认邀请框代码

    商务通默认的邀请框如何隐藏,下面提供笔者常用的解决代码: 下面提供的是一个纯JS操作的方法和一个使用jQuery操作的方法,代码原理是判断一个div ID为LRdiv1的标签,通过判断其css样式display是否为none来判断邀请框是否显示,如果为显示我们就将其隐藏起来

  4. 医疗网站商务通弹窗吸引用户点击的几点注意事项

    试想一下, 当我们浏览一个医疗的网站,看一篇文章总是不断的弹出对话框,就会让人烦躁,估计很少有人会有耐心的浏览的。小脑袋竞价软件个人觉得,一个优秀的医疗网站应该能让患者顺畅的查看某些病症信息或者他们想要了解全部的内容。这样才可以提升网站的用

  5. 离线宝ID的两种获取方法

    1、百度推广后台的浏览器URL中 2、登录离线宝(http://lxb.baidu.com/)-样式设置api自定义