JS:阻止按空格页面下滑滚动

我在 留言 界面添加Chrome恐龙游戏时候,恐龙的跳跃可以有空格键,但是只要在浏览器页面内,空格后就会滚动下滑,下面给出解决办法。

效果链接:https://www.xxxzhy.com/musicList/

1 直接屏蔽空格键

document.onkeydown = function(ev){
      var e = ev || event;
      if(e.keyCode == 32){
            return false;
      }
}

但是这样会造成最先面的 评论系统无法 使用空格

2 最终解决

<script>
function cancelSpace(e){
    var e = e|| window.event;  
    var elm = e.srcElement || e.target;
    var key = e.keyCode || e.charCode;
    if(key == 32){     
        if(elm.tagName.toLowerCase()=="input" && elm.type.toLowerCase()=="text" || elm.tagName.toLowerCase() == "textarea"){   
            return;         
        }  
        if(window.event){         
            e.returnValue = false;    
        }  
        else{      
            e.preventDefault();      
        }      
    }
}
document.onkeypress=cancelSpace;
</script>

这样又组织了浏览器空格滚心下滑,又可能正常在输入框内使用空格了~


参考:https://blog.csdn.net/qq867263657/article/details/72122864

打赏
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!

客官,赏一瓶怡宝吧。

支付宝
微信