javascript - 阻止浏览器(Chrome)运行默认功能,例如按空格滚动

标签 javascript jquery html

我在这里使用了两个函数,第一个用于阻止默认功能,如空格键滚动等

<span id="current"></span>

$("html").on("keydown", function (e) {
  {
        e.preventDefault();
  }
});
document.onkeypress = function(evt) 
{
     evt = evt || window.event;
    var charCode = evt.keyCode || evt.which;
    document.getElementById("current").innerHTML=charCode;
};

现在这段代码可以在firefox中工作,用于阻止firefox的各种默认功能,例如ctrl+a ctrl+s空格键滚动,并且还在span中给出输出,但是当我在chrome中尝试它时,它也阻止了chrome的各种默认功能,但没有不在范围内给出输出。

我也可以写成

document.onkeypress = function(evt) 
{
     evt = evt || window.event;
     var charCode = evt.keyCode || evt.which;
     document.getElementById("current").innerHTML=charCode;
     return false;
};

它适用于 firfox 和 chrome 但我的函数(evt)非常长并且包含许多 if-else 循环,如果我按双空格或连续按空格键,它就会向下滚动,所以我想要任何替代解决方案,其中我可以使用两个函数,一个用于阻塞,另一个用于输出并且它也可以在 chrome 中工作。

最佳答案

 function (x) {
  {
    x = window.event;
    var cc = evt.keyCode ;
    $('#current').html=cc;
    x.preventDefault();
    return false;
  }
});

关于javascript - 阻止浏览器(Chrome)运行默认功能,例如按空格滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18155018/

相关文章:

javascript - 即使断言在柏树中失败,测试仍然成功

javascript - 脚本运行正常,但 Canvas 上没有任何内容

javascript - 在 js 标签中使用 dom-module 属性

javascript - 如何在Javascript中用英文单词写一个整数?

javascript - 使用 jquery 更改按钮的背景图像(每个按钮都有其独立的 id)

javascript - 我可以使用 javascript 在两个本地 html 文件之间进行通信吗?

javascript - ASP.NET MVC。检查用户是否获得 JavaScript 授权

javascript - 在另一个 Javascript 文件中获取全局 Javascript 变量

c++ - 需要 Webkit 和 C++ 示例代码来从文件中读取和显示 HTML

html - 左下角的消息框