要做手机端分享工具,在网上找了好久,有的设计界面很好,有的兼容性很好。各取所长,整合一起了一个新的分享应用 NativeShare
兼容性:
- 移动端几乎所有浏览器都支持分享到 QQ 和 QQ 空间
- QQ 浏览器
- UC 浏览器
- 微信自带浏览器(只能设置文案,分享需要用户手动点击右上角)
- QQ 自带浏览器(只能设置文案,分享需要用户手动点击右上角)
- QQ 空间 APP(只能设置文案,分享需要用户手动点击右上角)
- android 百度浏览器
存在的问题:
- UC 浏览器安卓端不能设置 icon
- 百度浏览器安卓端不能指定分享
以下是应用代码。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
| <script type="text/javascript" src="__PUBLIC__/Home/share/nativeHtml.js" ></script> <script type="text/javascript" src="__PUBLIC__/Home/share/NativeShare.js" ></script> <link rel="stylesheet" href="__PUBLIC__/Home/share/nativeShare.css" /> <a id="btn" class="hd-share" onclick="showshare()"></a > <span>商品详情</span> <script> function showshare() { $("#nativeShare").css("display", "block"); } $(function () { $(".share_shutdown").click(function () { $("#nativeShare").css("display", "none"); }); }); var guide_img = "__PUBLIC__/Home/share/icon/guide.png"; </script>
<div id="nativeShare"></div> <script> var share_obj = new nativeShare("nativeShare"); var nativeShare = new NativeShare(); var shareData = { title: "{$content.title}", desc: "{:$content['share_spec']?$content['share_spec']:$content['title']}", link: "http://{:$_SERVER['SERVER_NAME']}{:$_SERVER['REQUEST_URI']}", icon: "http://{:$_SERVER['SERVER_NAME']}__ROOT__{$content.picture}", success: function () { console.log("success"); }, fail: function () { console.log("fail"); }, }; nativeShare.setShareData(shareData); function call(command) { try { nativeShare.call(command); } catch (err) { alert(err.message); } } </script>
|
以下是引用的文件包
share.rar
以下是可能的几种情况的效果图
UC\QQ 浏览器
普通浏览器
微信内置浏览器