React Js 微信禁止复制链接分享禁止隐藏右上角菜单功能


Posted in Javascript onMay 26, 2017

废话不多说了,直接给大家贴代码了,具体代码如下所示:

/**
 * Created by wuyakun on 2017/5/23.
 */let wxUtils = {};
/**
 * 是否开启右上角Menu
 * @param open
 */
wxUtils.optionMenu = function (open = true) {
 if (open) {
  openOptionMenu();
 } else {
  disabledOptionMenu();
 }
};
/**
 * 是否禁用右上角
 */
function disabledOptionMenu() {
 if (typeof WeixinJSBridge === "undefined") {
  if (document.addEventListener) {
   document.addEventListener('WeixinJSBridgeReady', onBridgeReady(true), false);
  } else if (document.attachEvent) {
   document.attachEvent('WeixinJSBridgeReady', onBridgeReady(true));
   document.attachEvent('onWeixinJSBridgeReady', onBridgeReady(true));
  }
 } else {
  onBridgeReady(true);
 }
}
/**
 * 开启menu
 */
function openOptionMenu() {
 if (typeof WeixinJSBridge === "undefined") {
  if (document.addEventListener) {
   document.addEventListener('WeixinJSBridgeReady', onBridgeReady(false), false);
  } else if (document.attachEvent) {
   document.attachEvent('WeixinJSBridgeReady', onBridgeReady(false));
   document.attachEvent('onWeixinJSBridgeReady', onBridgeReady(false));
  }
 } else {
  onBridgeReady(false);
 }
}
function onBridgeReady(disable = true) {
 if (typeof WeixinJSBridge !== "undefined") WeixinJSBridge.call(disable ? 'hideOptionMenu' : 'showOptionMenu');
}
/**
 * 隐藏微信网页底部的导航栏
 * @param disable
 */
wxUtils.disabledToolbar = function (disable = true) {
 document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {
  // 通过下面这个API隐藏底部导航栏
  WeixinJSBridge.call(disable ? 'hideToolbar' : 'showToolbar');
 });
};
/**
 * 获取网络类型
 */
wxUtils.getNetworkType = function () {
 //network_type:wifi wifi网络 2 network_type:edge 非wifi,包含3G/2G 3 network_type:fail 网络断开连接 4 network_type:wwan 2g或者3g
 WeixinJSBridge.invoke('getNetworkType', {}, function (e) {
  // 在这里拿到e.err_msg,这里面就包含了所有的网络类型
  return e;
 });
};
export default wxUtils;

用法很简单:

export default class BaseComponent extends React.Component {
 componentDidMount() {
  try {
   //如果存在location说明是路由Component
   if (this.props.location) {
    // 全部禁用分享,想要分享自己开
    wxUtils.optionMenu(false);
   }
  } catch (e) {
   // console.log(e);
  }
 }
}

我写在了Base里面,主要是wxUtils.optionMenu(false);这一句

Javascript 相关文章推荐
javascript RadioButtonList获取选中值
Apr 09 Javascript
js 实现日期灵活格式化的小例子
Jul 14 Javascript
JavaScript中对DOM节点的访问、创建、修改、删除
Nov 16 Javascript
创建基于Bootstrap的下拉菜单的DropDownList的JQuery插件
Jun 02 Javascript
JavaScript实现通过select标签跳转网页的方法
Sep 29 Javascript
Angular和Vue双向数据绑定的实现原理(重点是vue的双向绑定)
Nov 22 Javascript
VueJS如何引入css或者less文件的一些坑
Apr 25 Javascript
Vue v2.5 调整和更新不完全问题
Oct 24 Javascript
JavaScript选择排序算法原理与实现方法示例
Aug 06 Javascript
手把手教你 CKEDITOR 4 扩展插件制作
Jun 18 Javascript
解决VUE双向绑定失效的问题
Oct 29 Javascript
JS如何判断对象是否包含某个属性
Aug 29 Javascript
AngularJS表单验证功能分析
May 26 #Javascript
给Easyui-Datebox设置隐藏或者不可用的解决方法
May 26 #Javascript
vue-cli+webpack在生成的项目中使用bootstrap实例代码
May 26 #Javascript
BootStrap中的Fontawesome 图标
May 25 #Javascript
Vue.js 中的 $watch使用方法
May 25 #Javascript
详解Javascript获取缓存和清除缓存API
May 25 #Javascript
Angularjs 实现动态添加控件功能
May 25 #Javascript
You might like
如何通过Linux命令行使用和运行PHP脚本
2015/07/29 PHP
Yii实现显示静态页的方法
2016/04/25 PHP
PHP回调函数概念与用法实例分析
2017/11/03 PHP
php实现session共享的实例方法
2019/09/19 PHP
laravel 使用auth编写登录的方法
2019/09/30 PHP
JQuery的Validation插件中Remote验证的中文问题
2010/07/26 Javascript
js浮点数精确计算(加、减、乘、除)
2013/12/26 Javascript
jQuery Validate表单验证插件 添加class属性形式的校验
2016/01/18 Javascript
Bootstrap 粘页脚效果
2016/03/28 Javascript
BootStrap中的table实现数据填充与分页应用小结
2016/05/26 Javascript
初探js和简单隐藏效果的实例
2017/11/23 Javascript
Vue手把手教你撸一个 beforeEnter 钩子函数
2018/04/24 Javascript
详解vue-cli下ESlint 配置说明
2018/09/03 Javascript
JavaScript读写二进制数据的方法详解
2018/09/09 Javascript
Vue CLI 3搭建vue+vuex最全分析(推荐)
2018/09/27 Javascript
详解用Webpack与Babel配置ES6开发环境
2019/03/12 Javascript
微信小程序自定义弹窗实现详解(可通用)
2019/07/04 Javascript
微信小程序实现分享商品海报功能
2019/09/30 Javascript
python开发中module模块用法实例分析
2015/11/12 Python
Mac中升级Python2.7到Python3.5步骤详解
2017/04/27 Python
利用python实现AR教程
2019/11/20 Python
python安装dlib库报错问题及解决方法
2020/03/16 Python
详解移动端HTML5页面端去掉input输入框的白色背景和边框(兼容Android和ios)
2016/12/15 HTML / CSS
英国鹦鹉店:Parrot Essentials
2018/12/03 全球购物
英国历史最悠久的DJ设备供应商:DJ Finance、DJ Warehouse、The DJ Shop
2019/09/04 全球购物
厨师岗位职责
2013/11/12 职场文书
测试工程师岗位职责
2013/11/28 职场文书
2014年迎新年活动方案
2014/02/19 职场文书
庆元旦文艺演出主持词
2014/03/27 职场文书
政府信息公开实施方案
2014/05/09 职场文书
《中国梦我的梦》中学生演讲稿
2014/08/20 职场文书
房地产经营管理专业自荐信
2014/09/02 职场文书
2014年依法行政工作总结
2014/11/19 职场文书
结婚喜宴祝酒词
2015/08/10 职场文书
爱国主题班会教案
2015/08/14 职场文书
MySQL数据库压缩版本安装与配置详细教程
2021/05/21 MySQL