阻止事件冒泡和默认行为,禁止键盘事件

Posted phoebeyue

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了阻止事件冒泡和默认行为,禁止键盘事件相关的知识,希望对你有一定的参考价值。

阻止事件冒泡:

function(e){
  e = e || window.event;
  if (e.stopPropagation) e.stopPropagation();
  else e.cancelBubble = true;
}

取消事件默认行为:

function(e) {
  e = e || window.event;
  if(e.preventDefault) e.preventDefault();
  else e.returnValue = false;
}

阻止键盘输入

elem.onkeypress/onkeydown = function(e) {
   return false;
}

在浏览网页的时候,键盘有很多快捷操作,如按空格键滚屏 F5刷新,但是我们有时候需要禁用这些功能怎么办呢?

在浏览器开始调用动作前禁止掉

function initthis()
{
    document.onkeydown=showKey;//不能用onkeyup 否则还是有动作的
}

function showKey(evt)
{
     evt = (evt) ? evt : window.event;
     if(evt.keyCode==32)
     {
          return false;//禁止空格翻页
     }
}


实用例子:土豆 迅雷在线视频的播放页面 你在播放页面时候按空格键是不会滚屏的,但是在写评论的时候可以使用空格键(PS:迅雷这点没做好哦,输入空格还是会暂停视屏,只要你定义个变量,在填写输入框的时候改变变量就可以了,出来改回去)

if(evt.keyCode==32&&doing==0)
{
    return false;//禁止空格翻页
}

编写自定义的javascript函数maskingKeyboard()和rightKey();

maskingKeyboard():禁用键盘

rightKey():禁用鼠标右键

<script type="text/javascript">
        //屏蔽键盘的单击事件
        function maskingKeyboard(){
            if(event.keyCode == 8){
                event.keyCode = 0;
                event.returnValue = false;
                alert("当前不允许使用退格键");
            }
            if(event.keyCode == 13){
                event.keyCode = 0;
                event.returnValue = false;
                alert("当前不允许使用回车键");
            }
            }
            function rightKey(){
            if(event.button == 2){
                event.returnValue = false;
                alert("禁止使用鼠标右键");
            }
            }
      </script>



以上是关于阻止事件冒泡和默认行为,禁止键盘事件的主要内容,如果未能解决你的问题,请参考以下文章

vue教程1-05 事件 简写事件对象冒泡默认行为键盘事件

js阻止默认事件的方法

js阻止冒泡和默认事件(默认行为)详解

阻止事件冒泡 和 阻止事件默认行为

js 停止事件冒泡 阻止浏览器的默认行为(阻止超连接 #)

阻止事件冒泡和事件默认行为