Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于禁用Tab键以转到浏览器选项卡和地址栏的JavaScript_Javascript_Jquery - Fatal编程技术网

用于禁用Tab键以转到浏览器选项卡和地址栏的JavaScript

用于禁用Tab键以转到浏览器选项卡和地址栏的JavaScript,javascript,jquery,Javascript,Jquery,一旦我激活了JS警报,我就试图阻止tab键进入Firefox中的浏览器栏和地址。我的表单焦点正在工作,但无法解决一旦JS警报触发,如何停止切换到浏览器级别。你知道我该怎么解决吗? 我的代码: 只需使用keydown事件,并防止默认操作,然后返回false: $(document).on("keydown", function(e) { if (e.keyCode == 9) { e.preventDefault(); return false; }

一旦我激活了JS警报,我就试图阻止tab键进入Firefox中的浏览器栏和地址。我的表单焦点正在工作,但无法解决一旦JS警报触发,如何停止切换到浏览器级别。你知道我该怎么解决吗? 我的代码:


只需使用keydown事件,并防止默认操作,然后返回false:

$(document).on("keydown", function(e) {
    if (e.keyCode == 9) {
        e.preventDefault();
        return false;
    }
})

只需使用keydown事件,并防止默认操作,然后返回false:

$(document).on("keydown", function(e) {
    if (e.keyCode == 9) {
        e.preventDefault();
        return false;
    }
})

我希望创建一个您正在解释的场景。我创建了一个警报框,然后将活动元素的名称打印到控制台。问题在于,当警报框处于活动状态时,浏览器会停止JavaScript。使用警报框是不可能的

function javaScriptIsRunning(){
  console.log("running");
  setTimeout(javaScriptIsRunning, 1000);
};

javaScriptIsRunning();

alert('a');
var onKeyUpcode = document.addEventListener("keyup", function(e){
  console.log(document.activeElement.localName);

});

我希望创建一个您正在解释的场景。我创建了一个警报框,然后将活动元素的名称打印到控制台。问题在于,当警报框处于活动状态时,浏览器会停止JavaScript。使用警报框是不可能的

function javaScriptIsRunning(){
  console.log("running");
  setTimeout(javaScriptIsRunning, 1000);
};

javaScriptIsRunning();

alert('a');
var onKeyUpcode = document.addEventListener("keyup", function(e){
  console.log(document.activeElement.localName);

});

你为什么想要这个?如果用户想进入地址栏,这取决于他们。尝试更改浏览器的默认行为被认为是一个巨大的禁忌。此外,您发布的代码与任何警报都没有任何关系。它检查页面上所有achor标签上的按键。这是特定于受损用户的,因此需要这样做。创建带有停用地址栏的窗口是可能的,但如果没有任何浏览器插件,您搜索的内容似乎很难实现。还要注意的是,像您的
9
这样的“键盘事件编号”在将来将被弃用。您为什么要这样做?如果用户想进入地址栏,这取决于他们。尝试更改浏览器的默认行为被认为是一个巨大的禁忌。此外,您发布的代码与任何警报都没有任何关系。它检查页面上所有achor标签上的按键。这是特定于受损用户的,因此需要这样做。创建带有停用地址栏的窗口是可能的,但如果没有任何浏览器插件,您搜索的内容似乎很难实现。还要注意的是,像您的
9
这样的“键盘事件编号”将来将被弃用,但这将禁用该选项卡key@SMH-如果在警报之前添加事件侦听器,然后在警报关闭后将其删除。然后,它将仅在警报打开时被禁用。但这将禁用选项卡key@SMH-如果在警报之前添加事件侦听器,然后在警报关闭后将其删除。然后,它将仅在警报打开时被禁用。