js禁止浏览器默认事件

禁止使用tab按键

_initStopTabKeycode () {
      window.addEventListener('keydown', event => {
        if (event.keyCode === 9) {
          event.preventDefault()
        }
      })
    }

PC端禁止浏览器放大缩小

_initNoScroll () {
      const keyCodeMap = {
        // 91: true, // command
        61: true,
        107: true, // 数字键盘 +
        109: true, // 数字键盘 -
        173: true, // 火狐 - 号
        187: true, // +
        189: true, // -
      };
      // 覆盖ctrl||command + ‘+’/‘-’
      document.onkeydown = function (event) {
        const e = event || window.event;
        const ctrlKey = e.ctrlKey || e.metaKey;
        if (ctrlKey && keyCodeMap[e.keyCode]) {
          e.preventDefault();
        } else if (e.detail) { // Firefox
          event.returnValue = false;
        }
      };
      // 覆盖鼠标滑动
      document.body.addEventListener('wheel', (e) => {
        if (e.ctrlKey) {
          if (e.deltaY < 0) {
            e.preventDefault();
            return false;
          }
          if (e.deltaY > 0) {
            e.preventDefault();
            return false;
          }
        }
      }, { passive: false });

    }

禁止浏览器使用右键

window.addEventListener('contextmenu', (e) => {
      e.preventDefault();
    })

禁止使用space上下向下滚动

// 监听全局

window.addEventListener('keydown', event => {
        if (event.keyCode === 32 && !this.$store.state.inputInfocus) {
          event.preventDefault()
        }
      })


// 需要对每一个输入表单进行事件监听

<el-input
        ref="searchInput"
        v-model="search"
        :class="{historyInput: statusSearchUi === 'showHistory'}"
        :placeholder="$t('lang.Search GIFs')"
        @keyup.enter.native="gifByInputChange"
        @input="changeSearch"
        @focus="focusSearch"
        @blur="blurSearch"
        maxlength="120"
        clearable
      >
      </el-input>


   // 控制历史记录弹窗2
    focusSearch () {
      this.$store.dispatch('setInputInfocus', true)
    },
    // 控制历史记录弹窗3
    blurSearch () {
      this.$store.dispatch('setInputInfocus', false)
    },
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值