用手机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. C#-WebForm-WebForm开发基础

    1.C/S 客户端应用程序 WinForm WPF 平级 数据是存放在其他的电脑上或服务器上 需要从服务器上下载相应的数据,在本地电脑上的客户端里进行加工 数据的加工是在用户的电脑上执行的,会对用户的 ...

  2. Windows 10一周年更新正式版官方ISO镜像(1607)

    微软已经开始推送Win10一周年更新正式版系统,按照此前预告微软官方网站也同步推出了Win10一周年更新正式版ISO官方镜像下载,版本已经升级到最新的1607,也就是Win10 Build 1607, ...

  3. 使用css打造形形色色的形状!

    使用css打造形形色色的形状! css是非常强大的工具,如果我们掌握的好,那么许多复杂的形状不需要使用图片而直接使用css完成即可,这不仅有利于减少http请求以增强性能还便于日后的管理和维护,一举两 ...

  4. SDL 1.2.15 issue

    SDL 1.2.15中,对于X11的函数,默认采用动态加载的方式 但相应的X11函数名在SDL中并没有重新命名(SDL2中都添加了前缀X11_) 这样在SDL与其他库混合静态编译链接时,X11的函数就 ...

  5. Elasticsearch集群状态脚本及grafana监控面板导出的json文件

    脚本文件: #!/usr/bin/env python import datetime import time import urllib import json import urllib2 imp ...

  6. Redis主-从部署实践

    0. 前言 这篇文章简要介绍Redis的主从部署,实现了一主二从,使用两个哨兵监控,以实现简单的HA,其中从库作为备机. 1. 部署 这里有三台服务器,其中239主机上的Redis作为主库,其余两个作 ...

  7. MyBatis学习总结(一)——MyBatis快速入门

    一.Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以 ...

  8. python 面向对象(类)

    面向对象,即是将具备某种共性的事物抽象成一个类(模板),然后再根据类来创建实例对象进行具体的使用. 概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写, ...

  9. Nginx 301重定向设置

    server { server_name www.***.com ***.com; if ($host != 'www.***.com' ) { rewrite ^/(.*)$ http://www. ...

  10. 最终解决 mouseenter, mouseleave , mouseout mousehover mousemove等事件的区别?

    在jquery中, html页面的div的显示和隐藏, 修改等的功能, 最终都要由 事件 触发来引用, 不管是键盘事件, 还是鼠标事件... mouseenter和mouseleave是成对对应的, ...