用手机UC浏览器访问新浪微博,会注意到有这样的两个分享按钮:

在手机端浏览器里,点击分享按钮,就可以启动微信客户端并分享到微信。研究了下其源代码,存在这样的一个js:http://mjs.sinaimg.cn/wap/module/share/201504071745/js/addShare.min.js

从里面抽离出了分享调用的方法,方便调用。(注意:这个分享功能只在UC手机浏览器有效)

if (/AppleWebKit.*Mobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))) {
if (window.location.href.indexOf("?mobile") < 0) {
try {
//判断是手机端访问
if (/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)) { //判断是UC浏览器
if (typeof (ucweb) != "undefined") { //微信好友
$("#btnShareFirend").unbind();
$("#btnShareFirend").bind("click", function () {
var Browser = new Object();
Browser.ios = /iphone/.test(Browser.userAgent); //判断ios系统
var title = document.title;
var img = "";
var url = location.href;
if (Browser.ios) {
ucbrowser.web_share(title, img, url, 'kWeixin', '', '', '');
} else {
ucweb.startRequest("shell.page_share", [title, img, url, 'WechatFriends', '', '', '']);
};
}); //微信朋友圈
$("#btnWeixinShare").unbind();
$("#btnWeixinShare").bind("click", function () {
var Browser = new Object();
Browser.ios = /iphone/.test(Browser.userAgent); //判断ios系统
var title = document.title;
var img = "";
var url = location.href;
if (Browser.ios) {
ucbrowser.web_share(title, img, url, 'kWeixinFriend', '', '', '');
} else {
ucweb.startRequest("shell.page_share", [title, img, url, 'WechatTimeline', '', '', '']);
};
}); }
}
} catch (e) { }
}
}

完整代码:

<html>
<body>
<script src="jquery.min.js"></script>
<h4>测试微信分享功能(仅在手机版UC浏览器下有效)</h4>
<input type="button" class="btnShareFriends" style='margin: 20px auto; width: 100%;height:50px;' value='分享给微信好友'> </input>
<br/>
<input type="button" class="btnWeixinShare" style='margin: 20px auto; width: 100%;height:50px;' value='分享到微信朋友圈'> </input>
<script type="TEXT/javascript">
$(function () {
if (/AppleWebKit.*Mobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))) {
if (window.location.href.indexOf("?mobile") < 0) { //判断是手机端访问
if (/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)) { //判断是UC浏览器
if (typeof (ucweb) != "undefined") { $(".btnShareFriends").click(function () {
var Browser = new Object();
Browser.ios = /iphone/.test(Browser.userAgent); //判断ios系统
var title = "测试分享到朋友圈";
var img = "";
var url = location.href;
if (Browser.ios) {
ucbrowser.web_share(title, img, url, 'kWeixin', '', '@39yst', '');
} else {
ucweb.startRequest("shell.page_share", [title, img, url, 'WechatFriends', '', '', '']);
}
}); $(".btnWeixinShare").click(function () {
var Browser = new Object();
Browser.ios = /iphone/.test(Browser.userAgent); //判断ios系统
var title = "测试分享到朋友圈";
var img = "";
var url = location.href;
if (Browser.ios) {
ucbrowser.web_share(title, img, url, 'kWeixinFriend', '', '@39yst', '');
} else {
ucweb.startRequest("shell.page_share", [title, img, url, 'WechatTimeline', '', '', '']);
}
});
}
} else {
alert("请使用手机UC浏览器测试");
}
} else {
alert("请使用手机访问测试");
}
}
});
</script>
</body>
</html>

版权声明:本文为博主原创文章,未经博主允许不得转载。

UC浏览器 分享到朋友圈和微信好友 分类: JavaScript 2015-04-28 14:45 615人阅读 评论(1) 收藏的更多相关文章

  1. UC浏览器 分享到朋友圈和微信好友

    用手机UC浏览器访问新浪微博,会注意到有这样的两个分享按钮: 在手机端浏览器里,点击分享按钮,就可以启动微信客户端并分享到微信.研究了下其源代码,存在这样的一个js:http://mjs.sinaim ...

  2. 前端知识概述----公司内部的一次分享 分类: JavaScript HTML+CSS 2015-04-16 21:24 2593人阅读 评论(2) 收藏

    因为公司内部一个纯后端团队要做一些适合自己团队的web页面,所以就有了这次分享.知识都是很基础,有的知识也只是做了解简单介绍.主要是想让大家对前端有一个基本的了解.现在做一个总结.欢迎大家拍砖. 知识 ...

  3. 团体程序设计天梯赛L1-020 帅到没朋友 2017-03-22 17:46 72人阅读 评论(0) 收藏

    L1-020. 帅到没朋友 时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 当芸芸众生忙着在朋友圈中发照片的时候,总有一些人因为 ...

  4. 微信移动客户端内部浏览器分享到朋友圈,QQ空间代码

    http://mp.weixin.qq.com/wiki/11/74ad127cc054f6b80759c40f77ec03db.html <script src="http://re ...

  5. 总结分享十大iOS开发者最喜爱的库 分类: ios相关 app相关 2015-04-03 16:43 320人阅读 评论(0) 收藏

    该10大iOS开发者最喜爱的库由"iOS辅导团队"成员Marcelo Fabri组织投票选举而得,参与者包括开发者团队,iOS辅导团队以及行业嘉宾.每个团队都要根据以下规则选出五个 ...

  6. Win10尝鲜体验——初识传说中不一样的Windows 分类: 资源分享 2015-07-24 18:27 13人阅读 评论(0) 收藏

    这几天,网上传来一个消息,虽然不知是好是坏,Win10可以下载安装了! 出于好奇,下载尝鲜,几个截图,留作纪念~ 中文,还是要好好支持的,毕竟中国有如此多的用户 可选的安装版本 许可条款也刚刚出炉,估 ...

  7. 404错误 标签: servlet浏览器 2016-11-16 16:58 61人阅读 评论(0) 收藏

    404是资源没有找到,一般由于以下几个方面导致: 1.路径出错: a)检查web.xml中servlet的配置是否出错 b)浏览器访问是路径书写方式:http://localhost:8080/项目名 ...

  8. 好用到没朋友的大数模板(c++) 2014-10-01 15:06 116人阅读 评论(0) 收藏

    #include <iostream> #include <cstring> using namespace std; #define DIGIT 4 //四位隔开,即万进制 ...

  9. 移动端以及 PC浏览器页面分享到朋友圈等的功能实现

    我们经常可以在一些 app上看到分享到朋友圈.微信好友.qq好友等功能,例如 饿了么.美团等 app,下单之后就会弹出给好友发红包的 modal窗,这在 app上很常见,app的权限可以很大,甚至连启 ...

随机推荐

  1. 关于select那点事

    select: 通过监视多个文件描述符的数组.当select()返回后 文件描述符便会被内核修改标志位,使进程 能进行后续操作 ------------------------------------ ...

  2. 教你一招:Word中的文字转换成表格,把表格转换成文字

    在使用office软件时,常常会在Word中加入表格,这时候我们一般想到的是,建立表格,然后一格一格的填写;或者用Excel表格制作在复制到Word文档中.其实在Word中就可以将文本文档转换成电子表 ...

  3. Python 面向对象 基础

    编程范式概述:面向过程 和 面向对象 以及函数式编程 面向过程:(Procedure Oriented)是一种以事件为中心的编程思想. 就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现 ...

  4. BUG处理方案设计

    简介 当应用程序发布上线后,用户在使用的过程中可能会出现异常情况.对于这样的状况,如果能及时获取用户的异常信息,便能及早的分析和解决问题. 需要收集的信息 1. bug日志: 2.应用程序的版本号 3 ...

  5. php无法创建中文名的文件

    需要使用iconv强制转换后才可以.

  6. hibernate UUID问题

    前言:hibernate对于字符串类型主键支持UUID主键生成策略,(号称是世界上唯一的字符串) 运行环境:运行环境:hibernate5.2,mysql5.6 一,使用hibernate给Strin ...

  7. 每日学习笔记:js中可以直接用id名调用的问题?

    在JavaScript中,标准的id选择器调用语法是: document.getElementById('myid').style.width = pc + "%"; 但是,今天发 ...

  8. Shell case esac语句

    case ... esac 与其他语言中的 switch ... case 语句类似,是一种多分枝选择结构. case 语句匹配一个值或一个模式,如果匹配成功,执行相匹配的命令.case语句格式如下: ...

  9. 与或左移右移操作在ARM寄存器配置中的作用

    逻辑运算: 与运算&:与0清零  清零用与运算 或运算 |:或1置一  置一用或运算 异或 ^:不同为1  /*****单个寄存器清零置一*************************** ...

  10. Linux Socket编程

    “一切皆Socket!” 话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket. ——有感于实际编程和开源项目研究. 我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览 ...