AI编程助手
AI免费问答

微信公众平台显示隐藏网页右上角菜单实例介绍

高洛峰   2017-03-26 14:35   6218浏览 原创

微信官方jsapi提供了界面操作接口,用来控制微信网页右上角的菜单,下面看看微信官方文档关于界面操作接口的说明。

隐藏右上角菜单接口

wx.hideOptionMenu();

显示右上角菜单接口

wx.showOptionMenu();

关闭当前网页窗口接口

wx.closeWindow();

批量隐藏功能按钮接口

wx.hideMenuItems({
    menuList: [] // 要隐藏的菜单项,只能隐藏“传播类”和“保护类”按钮,所有menu项见附录3
});

批量显示功能按钮接口

wx.showMenuItems({
    menuList: [] // 要显示的菜单项,所有menu项见附录3
});

隐藏所有非基础按钮接口

wx.hideAllNonBaseMenuItem();
// “基本类”按钮详见附录3

显示所有功能按钮接口

wx.showAllNonBaseMenuItem();


实现代码步骤

第一、jsp界面引入js库


@@######@@

<code class="js plain">

第二、之间的html代码


<code class="html plain">

@@######@@

<code class="html plain">

第三、<script></script>之间初始化微信jsapi库添加


@@######@@

<code class="js plain">

第四、调用第二步button按钮的功能js代码,在wx.ready中添加


@@######@@

<code class="js comments">

这些js方法注释已经写的很明白,每个方法对应一个button按钮功能

第五、完整的jsp页面代码,读者可直接复制运行


@@######@@

<code class="html plain">

上述jsp代码中有四个参数,这四个参数是成功调用微信jsapi的凭证,分别为appId(必填,公众号的唯一标识),timestamp(必填,生成签名的时间戳), nonceStr(必填,生成签名的随机串) ,signature(必填,签名),关于如何生成这四个参数,如果不知道的读者,请查看本页面左上角的菜单,里面有详细介绍,在这里不在累述。 

第六、上述代码运行后,效果如下

打开微信进入界面,功能已表示为红色

点击隐藏右上角菜单,效果如下

微信公众平台显示隐藏网页右上角菜单实例介绍

点击显示右上角菜单按钮,效果如下,仔细看此时还有复制链接,分享到朋友圈等功能

微信公众平台显示隐藏网页右上角菜单实例介绍

点击批量隐藏功能按钮,我们会发现,右上角的分享到朋友圈、复制链接已经没有了,效果图如下

微信公众平台显示隐藏网页右上角菜单实例介绍

微信公众平台显示隐藏网页右上角菜单实例介绍

微信公众平台显示隐藏网页右上角菜单实例介绍

微信公众平台显示隐藏网页右上角菜单实例介绍
<script> </script> 
 <script></script>
<center><h3>欢迎来到微信jsapi测试界面-V型知识库</h3></center>
     
     <h3>界面操作接口</h3><br>
      <span>隐藏右上角菜单接口</span><br>
      <button>hideOptionMenu</button><br>
      <span>显示右上角菜单接口</span><br>
      <button>showOptionMenu</button><br>
      <span>关闭当前网页窗口接口</span><br>
      <button>closeWindow</button><br>
      <span>批量隐藏功能按钮接口</span><br>
      <button>hideMenuItems</button><br>
      <span>批量显示功能按钮接口</span><br>
      <button>showMenuItems</button><br>
      <span>隐藏所有非基础按钮接口</span><br>
      <button>hideAllNonBaseMenuItem</button><br>
      <span>显示所有功能按钮接口</span><br>
      <button>showAllNonBaseMenuItem</button><br>
wx.config({  
    debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。  
    appId: '${appId}', // 必填,公众号的唯一标识  
    timestamp: '${ timestamp}' , // 必填,生成签名的时间戳  
    nonceStr: '${ nonceStr}', // 必填,生成签名的随机串  
    signature: '${ signature}',// 必填,签名,见附录1  
    jsApiList: ['checkJsApi',
                'chooseImage',
                'previewImage',
                 'uploadImage',
                 'downloadImage',
                  'getNetworkType',//网络状态接口
                  'openLocation',//使用微信内置地图查看地理位置接口
                  'getLocation', //获取地理位置接口
                  'hideOptionMenu',//界面操作接口1
                  'showOptionMenu',//界面操作接口2
                  'closeWindow' ,  ////界面操作接口3
                  'hideMenuItems',////界面操作接口4
                  'showMenuItems',////界面操作接口5
                  'hideAllNonBaseMenuItem',////界面操作接口6
                  'showAllNonBaseMenuItem'////界面操作接口7
               ] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2  
});
// 8 界面操作接口 开始----------
  // 8.1 隐藏右上角菜单
  document.querySelector('#hideOptionMenu').onclick = function () {
    wx.hideOptionMenu();
  };
 
  // 8.2 显示右上角菜单
  document.querySelector('#showOptionMenu').onclick = function () {
    wx.showOptionMenu();
  };
 
  // 8.3 批量隐藏菜单项
  document.querySelector('#hideMenuItems').onclick = function () {
    wx.hideMenuItems({
      menuList: [
        'menuItem:readMode', // 阅读模式
        'menuItem:share:timeline', // 分享到朋友圈
        'menuItem:copyUrl' // 复制链接
      ],
      success: function (res) {
        alert('已隐藏“阅读模式”,“分享到朋友圈”,“复制链接”等按钮');
      },
      fail: function (res) {
        alert(JSON.stringify(res));
      }
    });
  };
 
  // 8.4 批量显示菜单项
  document.querySelector('#showMenuItems').onclick = function () {
    wx.showMenuItems({
      menuList: [
        'menuItem:readMode', // 阅读模式
        'menuItem:share:timeline', // 分享到朋友圈
        'menuItem:copyUrl' // 复制链接
      ],
      success: function (res) {
        alert('已显示“阅读模式”,“分享到朋友圈”,“复制链接”等按钮');
      },
      fail: function (res) {
        alert(JSON.stringify(res));
      }
    });
  };
 
  // 8.5 隐藏所有非基本菜单项
  document.querySelector('#hideAllNonBaseMenuItem').onclick = function () {
    wx.hideAllNonBaseMenuItem({
      success: function () {
        alert('已隐藏所有非基本菜单项');
      }
    });
  };
 
  // 8.6 显示所有被隐藏的非基本菜单项
  document.querySelector('#showAllNonBaseMenuItem').onclick = function () {
    wx.showAllNonBaseMenuItem({
      success: function () {
        alert('已显示所有非基本菜单项');
      }
    });
  };
 
  // 8.7 关闭当前窗口
  document.querySelector('#closeWindow').onclick = function () {
    wx.closeWindow();
  };
 // 8 界面操作接口  结束------------------------------------------

 
nbsp;HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

  
    ">
    
    微信jsapi测试-V型知识库
    
   <script> </script> 
   <script></script>
    
  
   
  
  <center><h3>欢迎来到微信jsapi测试界面-V型知识库</h3></center>
     
     <h3>界面操作接口</h3><br>
      <span>隐藏右上角菜单接口</span><br>
      <button>hideOptionMenu</button><br>
      <span>显示右上角菜单接口</span><br>
      <button>showOptionMenu</button><br>
      <span>关闭当前网页窗口接口</span><br>
      <button>closeWindow</button><br>
      <span>批量隐藏功能按钮接口</span><br>
      <button>hideMenuItems</button><br>
      <span>批量显示功能按钮接口</span><br>
      <button>showMenuItems</button><br>
      <span>隐藏所有非基础按钮接口</span><br>
      <button>hideAllNonBaseMenuItem</button><br>
      <span>显示所有功能按钮接口</span><br>
      <button>showAllNonBaseMenuItem</button><br>
      
       
      
     

        

基础接口之判断当前客户端是否支持指定的js接口

         
     地理位置接口-使用微信内置地图查看位置接口
      
      地理位置接口-获取地理位置接口
      
     获取网络状态接口
      
      

图像接口

      拍照或从手机相册中选图接口
      
      预览图片接口
      
      上传图片接口
      
      下载图片接口
      
        
  显示图片@@##@@              <script> wx.config({ debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId: &#39;${appId}&#39;, // 必填,公众号的唯一标识 timestamp: &#39;${ timestamp}&#39; , // 必填,生成签名的时间戳 nonceStr: &#39;${ nonceStr}&#39;, // 必填,生成签名的随机串 signature: &#39;${ signature}&#39;,// 必填,签名,见附录1 jsApiList: [&#39;checkJsApi&#39;, &#39;chooseImage&#39;, &#39;previewImage&#39;, &#39;uploadImage&#39;, &#39;downloadImage&#39;, &#39;getNetworkType&#39;,//网络状态接口 &#39;openLocation&#39;,//使用微信内置地图查看地理位置接口 &#39;getLocation&#39;, //获取地理位置接口 &#39;hideOptionMenu&#39;,//界面操作接口1 &#39;showOptionMenu&#39;,//界面操作接口2 &#39;closeWindow&#39; , ////界面操作接口3 &#39;hideMenuItems&#39;,////界面操作接口4 &#39;showMenuItems&#39;,////界面操作接口5 &#39;hideAllNonBaseMenuItem&#39;,////界面操作接口6 &#39;showAllNonBaseMenuItem&#39;////界面操作接口7 ] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 }); wx.ready(function(){ // 5 图片接口 // 5.1 拍照、本地选图 var images = { localId: [], serverId: [] }; document.querySelector(&#39;#chooseImage&#39;).onclick = function () { wx.chooseImage({ success: function (res) { images.localId = res.localIds; alert(&#39;已选择 &#39; + res.localIds.length + &#39; 张图片&#39;); $("#faceImg").attr("src", res.localIds[0]);//显示图片到页面上 } }); }; // 5.2 图片预览 document.querySelector(&#39;#previewImage&#39;).onclick = function () { wx.previewImage({ current: &#39;http://www.vxzsk.com/upload//bf04c9b5-5699-421d-900e-3b68bbe58a8920160816.jpg&#39;, urls: [ &#39;http://www.vxzsk.com/upload//bf04c9b5-5699-421d-900e-3b68bbe58a8920160816.jpg&#39;, &#39;http://www.vxzsk.com/upload//bf04c9b5-5699-421d-900e-3b68bbe58a8920160816.jpg&#39;, &#39;http://www.vxzsk.com/upload//bf04c9b5-5699-421d-900e-3b68bbe58a8920160816.jpg&#39; ] }); }; // 5.3 上传图片 document.querySelector(&#39;#uploadImage&#39;).onclick = function () { if (images.localId.length == 0) { alert(&#39;请先使用 chooseImage 接口选择图片&#39;); return; } var i = 0, length = images.localId.length; images.serverId = []; function upload() { wx.uploadImage({ localId: images.localId[i], success: function (res) { i++; //alert(&#39;已上传:&#39; + i + &#39;/&#39; + length); images.serverId.push(res.serverId); if (i < length) { upload(); } }, fail: function (res) { alert(JSON.stringify(res)); } }); } upload(); }; // 5.4 下载图片 document.querySelector(&#39;#downloadImage&#39;).onclick = function () { if (images.serverId.length === 0) { alert(&#39;请先使用 uploadImage 上传图片&#39;); return; } var i = 0, length = images.serverId.length; images.localId = []; function download() { wx.downloadImage({ serverId: images.serverId[i], success: function (res) { i++; alert(&#39;已下载:&#39; + i + &#39;/&#39; + length); images.localId.push(res.localId); if (i < length) { download(); } } }); } download(); }; // 6 设备信息接口 // 6.1 获取当前网络状态 document.querySelector(&#39;#getNetworkType&#39;).onclick = function () { wx.getNetworkType({ success: function (res) { alert(res.networkType); }, fail: function (res) { alert(JSON.stringify(res)); } }); }; //网络接口结束 // 7 地理位置接口 开始 // 7.1 查看地理位置 document.querySelector(&#39;#openLocation&#39;).onclick = function () { wx.openLocation({ latitude: 23.099994, longitude: 113.324520, name: &#39;TIT 创意园&#39;, address: &#39;广州市海珠区新港中路 397 号&#39;, scale: 14, infoUrl: &#39;http://weixin.qq.com&#39; }); }; // 7.2 获取当前地理位置 document.querySelector(&#39;#getLocation&#39;).onclick = function () { wx.getLocation({ success: function (res) { alert(JSON.stringify(res)); }, cancel: function (res) { alert(&#39;用户拒绝授权获取地理位置&#39;); } }); }; // 7 地理位置接口 结束 // 8 界面操作接口 开始---------- // 8.1 隐藏右上角菜单 document.querySelector(&#39;#hideOptionMenu&#39;).onclick = function () { wx.hideOptionMenu(); }; // 8.2 显示右上角菜单 document.querySelector(&#39;#showOptionMenu&#39;).onclick = function () { wx.showOptionMenu(); }; // 8.3 批量隐藏菜单项 document.querySelector(&#39;#hideMenuItems&#39;).onclick = function () { wx.hideMenuItems({ menuList: [ &#39;menuItem:readMode&#39;, // 阅读模式 &#39;menuItem:share:timeline&#39;, // 分享到朋友圈 &#39;menuItem:copyUrl&#39; // 复制链接 ], success: function (res) { alert(&#39;已隐藏“阅读模式”,“分享到朋友圈”,“复制链接”等按钮&#39;); }, fail: function (res) { alert(JSON.stringify(res)); } }); }; // 8.4 批量显示菜单项 document.querySelector(&#39;#showMenuItems&#39;).onclick = function () { wx.showMenuItems({ menuList: [ &#39;menuItem:readMode&#39;, // 阅读模式 &#39;menuItem:share:timeline&#39;, // 分享到朋友圈 &#39;menuItem:copyUrl&#39; // 复制链接 ], success: function (res) { alert(&#39;已显示“阅读模式”,“分享到朋友圈”,“复制链接”等按钮&#39;); }, fail: function (res) { alert(JSON.stringify(res)); } }); }; // 8.5 隐藏所有非基本菜单项 document.querySelector(&#39;#hideAllNonBaseMenuItem&#39;).onclick = function () { wx.hideAllNonBaseMenuItem({ success: function () { alert(&#39;已隐藏所有非基本菜单项&#39;); } }); }; // 8.6 显示所有被隐藏的非基本菜单项 document.querySelector(&#39;#showAllNonBaseMenuItem&#39;).onclick = function () { wx.showAllNonBaseMenuItem({ success: function () { alert(&#39;已显示所有非基本菜单项&#39;); } }); }; // 8.7 关闭当前窗口 document.querySelector(&#39;#closeWindow&#39;).onclick = function () { wx.closeWindow(); }; // 8 界面操作接口 结束------------------------------------------ }); //初始化jsapi接口 状态 wx.error(function (res) { alert("调用微信jsapi返回的状态:"+res.errMsg); }); </script>        
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。