1.设置分享调用的标题、图片、url预览。

2.控制右上角三个点按钮的隐藏显示(和底部工具栏的显示隐藏--未测试)。

3.判断网页是否在微信中被调用。

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport" />
<meta content="yes" name="apple-mobile-web-app-capable" />
<meta content="black" name="apple-mobile-web-app-status-bar-style" />
<meta content="telephone=no" name="format-detection" />
<title>微信分享功能引入页面-控制分享时候调用的标题、图片和url</title>
<style>
html,body{ font-size: 100%; width:100%; height:100%; overflow:hidden}
</style>
</head>
<body >
<div class="box">
    <p><a href="javascript:void(0);" onclick="hideMenu()" id="hideRigUp">隐藏右上角三个点按钮。</a></p>
    <p><a href="javascript:void(0);" onclick="showMenu()" id="showRigUp">显示右上角三个点按钮。</a></p>
    <!-- <p><a href="javascript:void(0);" onclick="hideTool()" id="hideRigDown">隐藏右下面工具栏</a></p>
    <p><a href="javascript:void(0);" onclick="showTool()" id="showRigDown">显示右下面工具栏</a></p> -->
    <p id="tdc" style="display:none"><img src=""></p>

</div>
<script type="text/javascript">

//title如果没有设置就会调用页面title标签里面的title
var url = window.location.href;
var imgUrl = "http://i0.cy.com/tl3d_m/main/20141009/home_logo.png";
    function sendMessage(){
        //按钮一之------发送给好友
        WeixinJSBridge.on('menu:share:appmessage', function(argv){
            WeixinJSBridge.invoke('sendAppMessage',{
            "appid":"",                                     //appid 设置空就好了。
            "img_url":imgUrl,                                   //分享时所带的图片路径
            "img_width":"120",                              //图片宽度
            "img_height":"120",                             //图片高度
            "link":url,                  //分享附带链接地址
            "desc":"分享给好友描述",            //分享内容介绍 --这里会显示在预览里面。
            "title":"分享测试-好友"
            }, function(res){/*** 回调函数,最好设置为空 ***/
                aler("分享给好友");//没有效果
            });
            setTimeout(function () {alert("点击分享或转发后1.5秒后调用"); }, 1500);//点击分享或转发后1.5秒后调用

        });
        //按钮一之------发送到朋友圈
        WeixinJSBridge.on('menu:share:timeline', function(argv){
            WeixinJSBridge.invoke('shareTimeline',{
            "appid":"",                                     //appid 设置空就好了。
            "img_url":imgUrl,                                   //分享时所带的图片路径
            "img_width":"120",                              //图片宽度
            "img_height":"120",                             //图片高度
            "link":url,                  //分享附带链接地址
            "desc":"分享给朋友圈描述",   //分享内容介绍 --貌似不显示,没啥用。
            "title":"分享测试-朋友圈"
            }, function(res){/*** 回调函数,最好设置为空 ***/
                aler("分享给朋友圈");//没有效果
            });
            setTimeout(function () {alert("点击分享或转发后1.5秒后调用"); }, 1500);//点击分享或转发后1.5秒后调用

        });
        alert("调用成功!现在可以通过右上角按钮分享给朋友或者朋友圈!");

    }

 //隐藏右上角三个点按钮。
function hideMenu(){
    if(window.WeixinJSBridge){
       WeixinJSBridge.call('hideOptionMenu');
   }
}
 //显示右上角三个点按钮。
function showMenu(){
    if(window.WeixinJSBridge){
        WeixinJSBridge.call('showOptionMenu');
    }
}
 //隐藏右下面工具栏
function hideTool(){
    if(window.WeixinJSBridge){
        WeixinJSBridge.call('hideToolbar');
    }
}
 //显示右下面工具栏
function showTool(){
    if(window.WeixinJSBridge){
        WeixinJSBridge.call('showToolbar');
    }
}

//添加事件监听
//文档的WeixinJSBridgeReady事件触发后绑定微信分享,否则会绑定失败
if(document.addEventListener){
    document.addEventListener('WeixinJSBridgeReady', sendMessage, false);
}else if(document.attachEvent){
    document.attachEvent('WeixinJSBridgeReady' , sendMessage);
    document.attachEvent('onWeixinJSBridgeReady' , sendMessage);
}

    //判断网页是否在微信中被调用
    var ua = navigator.userAgent.toLowerCase();
    if(ua.match(/MicroMessenger/i)=="micromessenger") {
    } else {
        alert("调用失败,请用微信扫一扫,扫描下面二维码打开网页!");
        document.getElementById("tdc").style.display = "block";
        document.getElementById("tdc").getElementsByTagName("img")[0].src="http://zhidongtdc.duapp.com/getpic.php?url="+ window.location.href +"?1&size=4&margin=2";
    }

</script>
</body>
</html>

微信分享功能引入页面-控制分享时候调用的标题、图片、url和微信按钮隐藏显示控制的更多相关文章

  1. Android中使用ShareSDK集成分享功能

    引言      现在APP开发集成分享功能已经是非常普遍的需求了.其他集成分享技术我没有使用过,今天我就来介绍下使用ShareSDK来进行分享功能开发的一些基本步骤和注意点,帮助朋友们避免一些坑.好了 ...

  2. android 实现分享功能两种方法

    当我想做一个智能的记事本的时候,我就在尝试自己写一组分享功能.后来才知道,原来每个社交软件中都有自己的分享接口. 这就大大减少了我们的代码量了. 第一种方法:特点--简单 package com.ex ...

  3. 【微信开发】【Asp.net MVC】-- 微信分享功能

    内嵌在微信中的网页,右上角都会有一个默认的分享功能.如下图所示,第一个为自定义的效果,第二个为默认的效果.实现了自定义的分享链接是不是更让人有点击的欲望?下面讲解下开发的过程. 一.准备,设置js接口 ...

  4. Android 微信SDK分享功能中的最全过程步骤分析

    在前面有一章已经分析过怎么用官方的demo分享微信信息了,在这里我就不再多说,其中关于在自己应用分享说得很简单,本文作者也是经过一番折腾才弄成功,为了以后让大家都少走弯路,决定在这里从头到尾介绍怎么在 ...

  5. 微信JS-SDK实际分享功能

    为了净化网络,整顿诱导分享及诱导关注行为,微信于2014年12月30日发布了<微信公众平台关于整顿诱导分享及诱导关注行为的公告>,微信平台开发者发现,原有的微信分享功能不能用了,在ipho ...

  6. 微信app的分享功能

    最近在做微信app,需要用到分享功能,横观文档,压根没有提过分享功能自定义的事情……后来在搜索中找到一些前辈的文章,使用WeixinJSBridge这个接口实现,但是,我非常非常好奇,这是什么渠道透露 ...

  7. 在Unity3D项目中接入ShareSDK实现安卓平台微信分享功能(可使用ShareSDK默认UI或自定义UI)

    最近公司的大厅要重做,我协助主程一起制作新大厅和新框架,前面制作的编辑器也派上了用场.等全部功能做完后我会再写一个复盘,这两天主程在忙于写热更新的功能,所以把接入分享SDK功能的任务交给了我,Shar ...

  8. ionic2+Angular web端 实现微信分享以及如何跳转回分享出去的页面

    微信分享,首先参考微信JS-SDK开发文档. step1:在启动文件index.html中引入微信js文件: <script src="http://res.wx.qq.com/ope ...

  9. NodeJs实现自定义分享功能,获取微信授权+用户信息

    最近公司搞了个转盘抽奖的运营活动,入口放在了微信公众号里,好久没碰过微信了,刚拾起来瞬间感觉有点懵逼....似乎把之前的坑又都重新踩了一遍,虽然过程曲折,不过好在顺利完成了,而且印象也更加深刻了,抽时 ...

随机推荐

  1. Hybrid App技术批量制作APP应用与跨平台解决方案

    前言 简单的聊一聊我开发了4年之久的Hybrid App(混合模式移动应用)平台开发,目前一直在持续开发与维护,支持无编程快速开发! 其本意也不是要吹捧前端有多么强大,只是用自己的实际项目阐述下对于前 ...

  2. 第二章 --- 关于Javascript 设计模式 之 策略模式

    这一章节里面,我们会主要的针对JavaScript中的策略模式进行理解和学习 一.定义 策略模式: 定义一系列的算法,把他们封装起来,并且是他们可以相互替换. (这样的大的定义纲领,真的不好理解,特别 ...

  3. 安装两个tomcat

    编辑环境变量:vi /etc/profile 加入以下代码(tomcat路径要配置自己实际的tomcat安装目录) ##########first tomcat########### CATALINA ...

  4. .Net语言 APP开发平台——Smobiler学习日志:如何在手机上实现电子签名功能

    最前面的话:Smobiler是一个在VS环境中使用.Net语言来开发APP的开发平台,也许比Xamarin更方便 一.目标样式 我们要实现上图中的效果,需要如下的操作: 1.从工具栏上的“Smobil ...

  5. Linux下搭建VPN服务器(CentOS、pptp)转

    先说我搭建过程中出现的问题吧: 按照 教程搭建好之后出现了619错误,查看日志:/var/log/messages: Nov 20 09:46:20 localhost pptpd[7498]: GR ...

  6. C# Retry重试操作解决方案(附源码)

    一.前言 (1)对于Thread的Abort方法,如果线程当前正在执行的是一段非托管代码,那么CLR就不会抛出ThreadAbortException,只有当代码继续回到CLR中时,才会引发Threa ...

  7. javaweb学习总结(十四)——JSP原理

    一.什么是JSP? JSP全称是Java Server Pages,它和servle技术一样,都是SUN公司定义的一种用于开发动态web资源的技术. JSP这门技术的最大的特点在于,写jsp就像在写h ...

  8. Activiti系列:带有serviceTask的或者定时启动任务的流程部署失败的原因分析

    在将两个带有serviceTask任务的流程部署到数据库的时候发现无法导入,最终分析出如下问题: 1)流程1是打算让定时启动事件可以每小时触发一次 由于原来是用 R/2015-11-01T01:00: ...

  9. hdu------(4302)Holedox Eating(树状数组+二分)

    Holedox Eating Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)To ...

  10. KMP_Best Reward

    大意:把一个字符串分成两串,假如一个字符串是回文串就可以加上它的VALUE,否则它的VALUE为0: KMP的特点是可以求出前缀与后面的字符串是否匹配, 注意回文串的特点,所以当我们把回文串反转的时候 ...