问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何实现在浏览器中打开IM聊天窗口

发布网友 发布时间:2022-04-23 19:05

我来回答

2个回答

热心网友 时间:2023-10-14 04:16

如何在浏览器中打开IM并执行相应操作?下面以旺旺为例说明,对于QQ等原理一致。


1. 浏览器中如何判断旺旺是否已经安装,

 

过程如下:

(1) 打开淘宝任意店铺页面,查看源码,在亮灯旺旺图标处有如下代码:

[html] view plain copy<a href="http://amos.alicdn.com/getcid.aw?v=3&uid=%B5%D1%C9%AF%C6%EC%BD%A2%B5%EA&site=cntaobao&groupid=416517&s=1&charset=gbk" target="_blank">  <span style="white-space:pre">  </span><img border="0" alt="给我发消息" src="http://amos.alicdn.com/grponline.aw?v=3&uid=%B5%D1%C9%AF%C6%EC%BD%A2%B5%EA&site=cntaobao&gids=416517&s=1">  </a>  


img是旺旺图标,重点是href的内容。查看href链接的源码,如下:

[html] view plain copy<html xmlns="http://www.w3.org/1999/xhtml">  <head><title></title> </head>   <body>   <script src="http://www.im.alisoft.com/webim/js/website.js" > </script>   <script language="javascript">      function windowClose(){           window.opener = null;             window.open('','_top');           window.top.close();      }      sendClientMsg('', '', 'cntaobao', '笛莎旗舰店:25', 1, '');      setTimeout('windowClose()', 1);  </script>  </body> </html>  

从源码可知这段代码做了这几件事:首先调用sendClientMsg函数,等待1秒钟,打开一个空白窗口,然后关闭之。核心是sendClientMsg函数。它位于website.js中。查看website.js的源码。改源码被混淆压缩了,为了便于查看,找个在线js格式化工具将代码重新格式化一下。这里使用了“站长工具”提供的在线js格式化工具

有这样一段函数,它首先创建一个aliimx的activeX对象,如果创建成功则说明旺旺被安装了,否则根据站点来源(淘宝中国站、阿里中国站、雅虎中国站)分别判断是否安装了其它几个版本的旺旺。源码如下:

[javascript] view plain copyfunction isInstalledClient(C) {      try {          var B = new ActiveXObject("aliimx.wangwangx");          if (B != null) {              return 1          }      } catch(D) {}      var A = getSite(C);      if (A == "cntaobao") {          if (newCheckWangWangInstalled() != DEFAULT_VERSION) {              return 1          }      } else {          if (A == "cnalichn") {              if (newCheckAlitalkInstalled() != DEFAULT_VERSION) {                  return 1              }          } else {              if (A == "chnyahoo") {                  if (newCheckYahooInstalled() != DEFAULT_VERSION) {                      return 1                  }              } else {                  return 0              }          }      }      return 0  }  


[javascript] view plain copyfunction newCheckAlitalkInstalled() {      var A = DEFAULT_VERSION;      try {          var C = new ActiveXObject("AlitalkSetup.Install");          if (C != null) {              A = "cnalichn"          }      } catch(B) {}      return A  }  function newCheckWangWangInstalled() {      var A = DEFAULT_VERSION;      try {          var C = new ActiveXObject("WangWangX.WangWangObj");          if (C != null && "1.6.06.0525" != C.GetVersionStr()) {              A = "cntaobao"          }      } catch(B) {} finally {          C = null      }      return A  }  function newCheckYahooInstalled() {      var A = DEFAULT_VERSION;      try {          var C = new ActiveXObject("YahooWangWangX.WangWangObj");          if (C != null) {              A = "chnyahoo"          }      } catch(B) {}      return A  }  


为何通过

[javascript] view plain copyvar B = new ActiveXObject("aliimx.wangwangx");  if (B != null) {      return 1  }  

这段代码能判断出Windows是否安装了旺旺呢?旺旺安装到Windows中之后会在注册表中写入若干条注册表项,在浏览器中通过ActiveX控件来读取注册表,如果能够找到相应的注册表项,则说明当前Windows中安装了旺旺,否则表明没有安装。调用

[javascript] view plain copynew ActiveXObject("aliimx.wangwangx");  

的时候浏览器会去读取注册表,在HKEY_CLASSES_ROOT下搜索aliimx.wangwangx表项,找到了则说明系统安装了阿里旺旺。

由此也可以知道,如果系统中的旺旺是未经“美化”的绿色版,浏览器不一定能够判断出它的存在。

热心网友 时间:2023-10-14 04:16

UC 针对国内用户可能相对顺手点,若是你老网友了。推荐使用opera ,简单实用,没有太多无用的功能,占用空间,资源,都很小。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果手机微信怎么换漂亮字体(苹果手机微信怎么换行输入) 有什么好用的app转换字体 手写转文字的软件 erp可以看评论地址吗 淘宝评论url是什么意思? 揭秘:码牌支付风控升级,背后真相揭秘 电脑电视直播软件哪个好用什么软件好电脑看电视直播 潼南子同街学区是哪些 三极管BU406价格和参数? 火锅料放在冰柜忘了插电一个星期给会坏了吗 火锅的设备有哪些 html模拟微信聊天页面输入框问题 用div的contenteditable属性将... qq聊天框用html怎么实现的 求助:聊天窗口html码?求高手发电子邮件告诉我?1058217977@qq.com 如何在HTML实现调用QQ聊天框呢,? HTML5,网页聊天界面点击发送消息后怎么让输入框内容清空,并在聊天框显... HTML网页制作问题 如何做出那种论坛聊天框的功能? 如何在html网页中添加写一个在线聊天工具,类似淘宝网页中的简单阿里旺... 如何用html css编写聊天界面 微信聊天记录html文件在电脑上显示和微信聊天框不一样 网页聊天html聊天界面问题,如何在窗口滚动显示信息 html5聊天窗口最后一条消息怎么显示出来 oppo手机为什么下载不了微信? OPPO手机为什么安装不上微信? - 信息提示 OPPO手机微信重新安装不了 你好,我的oppor7t现在连微信都下不了,怎么回事呢? oppox9007怎么安装不了微信的? oppo r7s不能安装微信 怎么写中二班卡通字 如何抓好全县经济工作 如何在网页端实现一个仿微信的聊天窗口 其实是一个聊天室的界面,html代码如下,我就是想问怎么让它界面好看点 有谁知道网页聊天窗口哪一个比较简洁? 如何实现网页上的聊天对话框,只求能实现两个人聊天的完整的代码_百度知 ... 炒鸡肉要焯水吗? 怎样做出更好吃的炒鸡腿? iphone如何用两个微信 家庭版鸡腿烧土豆,鸡腿要焯水吗? 双卡手机怎么用两个? 炒鸡肉要不要焯水,第一步很多人就做错了,这样做高考 做鸡肉用不用打水抄? word07页眉横线怎么放在字下面 自家建小型蔬果保鲜冷库怎样立项? word07 如何删除两页之间的这两条横线(不是页眉页脚) 关于word07中页眉页脚的设置问题 我的word07 文档最上面有一条线 请问怎么去掉哦,急!也试过删除页眉,都没好使! 建一个小型的蔬菜保鲜冷库大概需要多少钱? word07去掉第一页的版心上边线的横线 蔬菜保鲜库要怎么建造?需要准备什么? word07表格线擦除