商务通打开对话窗口容错代码
2016-01-23 14:07
495 查看
在某些情况下,页面加载商务通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、之前我们在网站上添加打开商务通对话窗口按钮时一般是像以下这种方式添加的:
代码只是做了一个判断,判断openZoosUrl函数是否定义,openZoosUrl为商务通自带的打开对话窗口的函数,如果已经定义说明商务通代码正确加载,那么我们就直接调用商务通打开对话框的函数来打开对话框即可;如果该函数未定义,则说明商务通代码加载失败,我们就利用商务通对话窗口链接来打开对话窗口,其中以上提供的代码中包含了获取来路页面地址、当前页面地址的代码,传递给商务通后台,防止轨迹丢失的情况。
完整代码如下:
<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:;" //使用商务通自带打开对话窗口函数,下同。
<a href="javascript:openZoosUrl('chatwin','&e=zhuanjia')">咨询在线专家</a>如果使用以上提供代容错代码后,只需要将连接代码修改为以下即可:
<a href="javascript:;" onclick="online('zhuanjia')">咨询在线专家</a> <a href="javascript:online('zhuanjia')">咨询在线专家</a>代码原理:
代码只是做了一个判断,判断openZoosUrl函数是否定义,openZoosUrl为商务通自带的打开对话窗口的函数,如果已经定义说明商务通代码正确加载,那么我们就直接调用商务通打开对话框的函数来打开对话框即可;如果该函数未定义,则说明商务通代码加载失败,我们就利用商务通对话窗口链接来打开对话窗口,其中以上提供的代码中包含了获取来路页面地址、当前页面地址的代码,传递给商务通后台,防止轨迹丢失的情况。
相关文章推荐
- 商务通传递中文及样式
- 原创:商务通弹窗最新破解方法
- 商务统邀请框openZoosUrl还可以这么玩
- 手机和PC站点击商务通无轨迹解决方法
- 网站商务通如何导出查看历史聊天纪录
- 商务通默认弹窗重写代码
- 商务通跳转代码(php和html两个版本)
- C++如何确定常量的类型
- C语言 数字转换为字符串
- spring Jdbc自己主动获取主键。
- python
- C++ 运算符优先级
- Installing PCNTL for PHP on OSX Lion
- 算法之美_源代码发布(2)
- x265-1.7版本-encoder/frameencoder.cpp注释
- [总结]PHP变量常量、流程控制、函数应用
- 39. Combination Sum leetcode python 2016 new season
- [leetcode]87. Scramble String @python
- C\C++中转义字符集锦