溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

微信公眾平臺中如何控制微信網(wǎng)頁右上角的菜單

發(fā)布時間:2021-09-13 17:16:36 來源:億速云 閱讀:211 作者:小新 欄目:移動開發(fā)

這篇文章主要介紹了微信公眾平臺中如何控制微信網(wǎng)頁右上角的菜單,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

隱藏右上角菜單接口

wx.hideOptionMenu();

顯示右上角菜單接口

wx.showOptionMenu();

關(guān)閉當前網(wǎng)頁窗口接口

wx.closeWindow();

批量隱藏功能按鈕接口

wx.hideMenuItems({
    menuList: [] // 要隱藏的菜單項,只能隱藏“傳播類”和“保護類”按鈕,所有menu項見附錄3
});

批量顯示功能按鈕接口

wx.showMenuItems({
    menuList: [] // 要顯示的菜單項,所有menu項見附錄3
});

隱藏所有非基礎(chǔ)按鈕接口

wx.hideAllNonBaseMenuItem();
// “基本類”按鈕詳見附錄3

顯示所有功能按鈕接口

wx.showAllNonBaseMenuItem();

實現(xiàn)代碼步驟

第一、jsp界面引入js庫


<script src="http://res.wx.qq.com/open/js/jweixin-1.1.0.js"> </script> 
 <script src="http://libs.baidu.com/jquery/2.0.0/jquery.js"></script>


第二、<body></body>之間的html代碼


<center><h4>歡迎來到微信jsapi測試界面-V型知識庫</h4></center>
     
     <h4 id="menu-webview">界面操作接口</h4><br>
      <span class="desc"  >隱藏右上角菜單接口</span><br>
      <button class="btn btn_primary" id="hideOptionMenu">hideOptionMenu</button><br>
      <span class="desc">顯示右上角菜單接口</span><br>
      <button class="btn btn_primary" id="showOptionMenu">showOptionMenu</button><br>
      <span class="desc">關(guān)閉當前網(wǎng)頁窗口接口</span><br>
      <button class="btn btn_primary" id="closeWindow">closeWindow</button><br>
      <span class="desc">批量隱藏功能按鈕接口</span><br>
      <button class="btn btn_primary" id="hideMenuItems">hideMenuItems</button><br>
      <span class="desc">批量顯示功能按鈕接口</span><br>
      <button class="btn btn_primary" id="showMenuItems">showMenuItems</button><br>
      <span class="desc">隱藏所有非基礎(chǔ)按鈕接口</span><br>
      <button class="btn btn_primary" id="hideAllNonBaseMenuItem">hideAllNonBaseMenuItem</button><br>
      <span class="desc">顯示所有功能按鈕接口</span><br>
      <button class="btn btn_primary" id="showAllNonBaseMenuItem">showAllNonBaseMenuItem</button><br>


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


wx.config({  
    debug: true, // 開啟調(diào)試模式,調(diào)用的所有api的返回值會在客戶端alert出來,若要查看傳入的參數(shù),可以在pc端打開,參數(shù)信息會通過log打出,僅在pc端時才會打印。  
    appId: '${appId}', // 必填,公眾號的唯一標識  
    timestamp: '${ timestamp}' , // 必填,生成簽名的時間戳  
    nonceStr: '${ nonceStr}', // 必填,生成簽名的隨機串  
    signature: '${ signature}',// 必填,簽名,見附錄1  
    jsApiList: ['checkJsApi',
                'chooseImage',
                'previewImage',
                 'uploadImage',
                 'downloadImage',
                  'getNetworkType',//網(wǎng)絡(luò)狀態(tài)接口
                  'openLocation',//使用微信內(nèi)置地圖查看地理位置接口
                  'getLocation', //獲取地理位置接口
                  'hideOptionMenu',//界面操作接口1
                  'showOptionMenu',//界面操作接口2
                  'closeWindow' ,  ////界面操作接口3
                  'hideMenuItems',////界面操作接口4
                  'showMenuItems',////界面操作接口5
                  'hideAllNonBaseMenuItem',////界面操作接口6
                  'showAllNonBaseMenuItem'////界面操作接口7
               ] // 必填,需要使用的JS接口列表,所有JS接口列表見附錄2  
});


第四、調(diào)用第二步button按鈕的功能js代碼,在wx.ready中添加


// 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' // 復(fù)制鏈接
      ],
      success: function (res) {
        alert('已隱藏“閱讀模式”,“分享到朋友圈”,“復(fù)制鏈接”等按鈕');
      },
      fail: function (res) {
        alert(JSON.stringify(res));
      }
    });
  };
 
  // 8.4 批量顯示菜單項
  document.querySelector('#showMenuItems').onclick = function () {
    wx.showMenuItems({
      menuList: [
        'menuItem:readMode', // 閱讀模式
        'menuItem:share:timeline', // 分享到朋友圈
        'menuItem:copyUrl' // 復(fù)制鏈接
      ],
      success: function (res) {
        alert('已顯示“閱讀模式”,“分享到朋友圈”,“復(fù)制鏈接”等按鈕');
      },
      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 關(guān)閉當前窗口
  document.querySelector('#closeWindow').onclick = function () {
    wx.closeWindow();
  };
 // 8 界面操作接口  結(jié)束------------------------------------------


這些js方法注釋已經(jīng)寫的很明白,每個方法對應(yīng)一個button按鈕功能

第五、完整的jsp頁面代碼,讀者可直接復(fù)制運行


<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    <!-- www.vxzsk.com原創(chuàng) -->
    <title>微信jsapi測試-V型知識庫</title>
    <meta name="viewport" content="width=320.1,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no">
   <script src="http://res.wx.qq.com/open/js/jweixin-1.1.0.js"> </script> 
   <script src="http://libs.baidu.com/jquery/2.0.0/jquery.js"></script>
    <style type="text/css">
    .desc{
    color: red;
    }
    </style>
  </head>
   
  <body>
  <center><h4>歡迎來到微信jsapi測試界面-V型知識庫</h4></center>
     
     <h4 id="menu-webview">界面操作接口</h4><br>
      <span class="desc"  >隱藏右上角菜單接口</span><br>
      <button class="btn btn_primary" id="hideOptionMenu">hideOptionMenu</button><br>
      <span class="desc">顯示右上角菜單接口</span><br>
      <button class="btn btn_primary" id="showOptionMenu">showOptionMenu</button><br>
      <span class="desc">關(guān)閉當前網(wǎng)頁窗口接口</span><br>
      <button class="btn btn_primary" id="closeWindow">closeWindow</button><br>
      <span class="desc">批量隱藏功能按鈕接口</span><br>
      <button class="btn btn_primary" id="hideMenuItems">hideMenuItems</button><br>
      <span class="desc">批量顯示功能按鈕接口</span><br>
      <button class="btn btn_primary" id="showMenuItems">showMenuItems</button><br>
      <span class="desc">隱藏所有非基礎(chǔ)按鈕接口</span><br>
      <button class="btn btn_primary" id="hideAllNonBaseMenuItem">hideAllNonBaseMenuItem</button><br>
      <span class="desc">顯示所有功能按鈕接口</span><br>
      <button class="btn btn_primary" id="showAllNonBaseMenuItem">showAllNonBaseMenuItem</button><br>
      
       
      
     <p style="display: none;"> 
      <p>基礎(chǔ)接口之判斷當前客戶端是否支持指定的js接口</p>   
     <input type="button" value="checkJSAPI" id="checkJsApi"><br>
     <span class="desc" style="color: red">地理位置接口-使用微信內(nèi)置地圖查看位置接口</span><br>
      <button class="btn btn_primary" id="openLocation">openLocation</button><br>
      <span class="desc" style="color: red">地理位置接口-獲取地理位置接口</span><br>
      <button class="btn btn_primary" id="getLocation">getLocation</button><br>
     <span class="desc" style="color: red">獲取網(wǎng)絡(luò)狀態(tài)接口</span><br>
      <button class="btn btn_primary" id="getNetworkType">getNetworkType</button><br>
      <h4 id="menu-image">圖像接口</h4>
      <span class="desc">拍照或從手機相冊中選圖接口</span><br>
      <button class="btn btn_primary" id="chooseImage">chooseImage</button><br>
      <span class="desc">預(yù)覽圖片接口</span><br>
      <button class="btn btn_primary" id="previewImage">previewImage</button><br>
      <span class="desc">上傳圖片接口</span><br>
      <button class="btn btn_primary" id="uploadImage">uploadImage</button><br>
      <span class="desc">下載圖片接口</span><br>
      <button class="btn btn_primary" id="downloadImage">downloadImage</button><br>
     
  <br>
  顯示圖片<img alt="" src="" id="faceImg">
  </p>
   
   
  <script type="text/javascript">
  wx.config({  
    debug: true, // 開啟調(diào)試模式,調(diào)用的所有api的返回值會在客戶端alert出來,若要查看傳入的參數(shù),可以在pc端打開,參數(shù)信息會通過log打出,僅在pc端時才會打印。  
    appId: '${appId}', // 必填,公眾號的唯一標識  
    timestamp: '${ timestamp}' , // 必填,生成簽名的時間戳  
    nonceStr: '${ nonceStr}', // 必填,生成簽名的隨機串  
    signature: '${ signature}',// 必填,簽名,見附錄1  
    jsApiList: ['checkJsApi',
                'chooseImage',
                'previewImage',
                 'uploadImage',
                 'downloadImage',
                  'getNetworkType',//網(wǎng)絡(luò)狀態(tài)接口
                  'openLocation',//使用微信內(nèi)置地圖查看地理位置接口
                  'getLocation', //獲取地理位置接口
                  'hideOptionMenu',//界面操作接口1
                  'showOptionMenu',//界面操作接口2
                  'closeWindow' ,  ////界面操作接口3
                  'hideMenuItems',////界面操作接口4
                  'showMenuItems',////界面操作接口5
                  'hideAllNonBaseMenuItem',////界面操作接口6
                  'showAllNonBaseMenuItem'////界面操作接口7
               ] // 必填,需要使用的JS接口列表,所有JS接口列表見附錄2  
});  
   
wx.ready(function(){  
    // 5 圖片接口
  // 5.1 拍照、本地選圖
  var images = {
    localId: [],
    serverId: []
  };
  document.querySelector('#chooseImage').onclick = function () {
    wx.chooseImage({
      success: function (res) {
        images.localId = res.localIds;
        alert('已選擇 ' + res.localIds.length + ' 張圖片');
         $("#faceImg").attr("src", res.localIds[0]);//顯示圖片到頁面上
      }
    });
  };
 
  // 5.2 圖片預(yù)覽
  document.querySelector('#previewImage').onclick = function () {
    wx.previewImage({
      current: 'http://www.vxzsk.com/upload//bf04c9b5-5699-421d-900e-3b68bbe58a8920160816.jpg',
      urls: [
        'http://www.vxzsk.com/upload//bf04c9b5-5699-421d-900e-3b68bbe58a8920160816.jpg',
        'http://www.vxzsk.com/upload//bf04c9b5-5699-421d-900e-3b68bbe58a8920160816.jpg',
        'http://www.vxzsk.com/upload//bf04c9b5-5699-421d-900e-3b68bbe58a8920160816.jpg'
      ]
    });
  };
 
  // 5.3 上傳圖片
  document.querySelector('#uploadImage').onclick = function () {
    if (images.localId.length == 0) {
      alert('請先使用 chooseImage 接口選擇圖片');
      return;
    }
    var i = 0, length = images.localId.length;
    images.serverId = [];
    function upload() {
      wx.uploadImage({
        localId: images.localId[i],
        success: function (res) {
          i++;
          //alert('已上傳:' + i + '/' + length);
          images.serverId.push(res.serverId);
          if (i < length) {
            upload();
          }
        },
        fail: function (res) {
          alert(JSON.stringify(res));
        }
      });
    }
    upload();
  };
 
  // 5.4 下載圖片
  document.querySelector('#downloadImage').onclick = function () {
    if (images.serverId.length === 0) {
      alert('請先使用 uploadImage 上傳圖片');
      return;
    }
    var i = 0, length = images.serverId.length;
    images.localId = [];
    function download() {
      wx.downloadImage({
        serverId: images.serverId[i],
        success: function (res) {
          i++;
          alert('已下載:' + i + '/' + length);
          images.localId.push(res.localId);
          if (i < length) {
            download();
          }
        }
      });
    }
    download();
  };
   
  // 6 設(shè)備信息接口
  // 6.1 獲取當前網(wǎng)絡(luò)狀態(tài)
  document.querySelector('#getNetworkType').onclick = function () {
    wx.getNetworkType({
      success: function (res) {
        alert(res.networkType);
      },
      fail: function (res) {
        alert(JSON.stringify(res));
      }
    });
  };
  //網(wǎng)絡(luò)接口結(jié)束
   
  // 7 地理位置接口 開始
  // 7.1 查看地理位置
  document.querySelector('#openLocation').onclick = function () {
    wx.openLocation({
      latitude: 23.099994,
      longitude: 113.324520,
      name: 'TIT 創(chuàng)意園',
      address: '廣州市海珠區(qū)新港中路 397 號',
      scale: 14,
      infoUrl: 'http://weixin.qq.com'
    });
  };
 
  // 7.2 獲取當前地理位置
  document.querySelector('#getLocation').onclick = function () {
    wx.getLocation({
      success: function (res) {
        alert(JSON.stringify(res));
      },
      cancel: function (res) {
        alert('用戶拒絕授權(quán)獲取地理位置');
      }
    });
  };
  // 7 地理位置接口 結(jié)束 
   
  // 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' // 復(fù)制鏈接
      ],
      success: function (res) {
        alert('已隱藏“閱讀模式”,“分享到朋友圈”,“復(fù)制鏈接”等按鈕');
      },
      fail: function (res) {
        alert(JSON.stringify(res));
      }
    });
  };
 
  // 8.4 批量顯示菜單項
  document.querySelector('#showMenuItems').onclick = function () {
    wx.showMenuItems({
      menuList: [
        'menuItem:readMode', // 閱讀模式
        'menuItem:share:timeline', // 分享到朋友圈
        'menuItem:copyUrl' // 復(fù)制鏈接
      ],
      success: function (res) {
        alert('已顯示“閱讀模式”,“分享到朋友圈”,“復(fù)制鏈接”等按鈕');
      },
      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 關(guān)閉當前窗口
  document.querySelector('#closeWindow').onclick = function () {
    wx.closeWindow();
  };
 // 8 界面操作接口  結(jié)束------------------------------------------
   
});  
 //初始化jsapi接口 狀態(tài)
wx.error(function (res) {
  alert("調(diào)用微信jsapi返回的狀態(tài):"+res.errMsg);
});
   
 </script>
    
  </body>
</html>


上述jsp代碼中有四個參數(shù),這四個參數(shù)是成功調(diào)用微信jsapi的憑證,分別為appId(必填,公眾號的唯一標識),timestamp(必填,生成簽名的時間戳), nonceStr(必填,生成簽名的隨機串) ,signature(必填,簽名),關(guān)于如何生成這四個參數(shù),如果不知道的讀者,請查看本頁面左上角的菜單,里面有詳細介紹,在這里不在累述。

第六、上述代碼運行后,效果如下

打開微信進入界面,功能已表示為紅色

微信公眾平臺中如何控制微信網(wǎng)頁右上角的菜單

點擊隱藏右上角菜單,效果如下

微信公眾平臺中如何控制微信網(wǎng)頁右上角的菜單

點擊顯示右上角菜單按鈕,效果如下,仔細看此時還有復(fù)制鏈接,分享到朋友圈等功能

微信公眾平臺中如何控制微信網(wǎng)頁右上角的菜單

點擊批量隱藏功能按鈕,我們會發(fā)現(xiàn),右上角的分享到朋友圈、復(fù)制鏈接已經(jīng)沒有了,效果圖如下

微信公眾平臺中如何控制微信網(wǎng)頁右上角的菜單

微信公眾平臺中如何控制微信網(wǎng)頁右上角的菜單

微信公眾平臺中如何控制微信網(wǎng)頁右上角的菜單

感謝你能夠認真閱讀完這篇文章,希望小編分享的“微信公眾平臺中如何控制微信網(wǎng)頁右上角的菜單”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI