Javascript 仅在html的顶层处理keydown事件
我正在开发一个Web应用程序,其中我有一个底层html文件,带有一些JS功能,我无法干预。 通过JS,我在页面上方创建了一层Javascript 仅在html的顶层处理keydown事件,javascript,html,jquery,Javascript,Html,Jquery,我正在开发一个Web应用程序,其中我有一个底层html文件,带有一些JS功能,我无法干预。 通过JS,我在页面上方创建了一层z-index:1000在我的css中。 现在我需要一些输入,但我的按键事件不能与下面的“页面”交互 我的想法是与这样的东西一起工作: $(document).keydown(function (e) { e.stopImmediatePropagation(); e.preventDefault(); return false; }); 据我所知,这将阻止事
z-index:1000代码>在我的css中。
现在我需要一些输入,但我的按键事件不能与下面的“页面”交互
我的想法是与这样的东西一起工作:
$(document).keydown(function (e) {
e.stopImmediatePropagation();
e.preventDefault();
return false;
});
据我所知,这将阻止事件触发。但它也会禁用覆盖中的输入
是否可以只接受
中的按键输入,而不在基础页面中触发按键关闭事件
谢谢你的建议
代码:
.html
带有
和
的标准html,我不想与之交互,因为这是一个在我公司生产过程中运行的有10年历史的软件
.js
.css
这不管用吗?
通过链接隐藏html上的向下键
$( "#idForUnderlyingHtml" ).keydown(function( event ) {
event.stopImmediatePropagation();
event.preventDefault();
return false;
});
如果这背后的意图是限制客户端在浏览器中的功能,那么您应该注意,即使是没有经验的用户也无法了解如何在其客户端中禁用或修改JS。请将用于创建覆盖的HTML、CSS和JS添加到添加的代码部分。我现在尝试了,但没有任何积极的结果:$(document).on(“keydown”,“idofunderlynghtml”,函数(e){if($(“.modal”).is(“:visible”){e.stopImmediatePropagation();e.preventDefault();return false;})代码>@fatum_昆虫也许这能帮到你
function inputMessage() {
return (
'<div id="customMessage">
<div id="textInput"><label for="description" id="inputLabel">Um was für ein Problem handelt es sich?</label><br><textarea id="description" placeholder="Bitte beschreiben Sie den Fehler"></textarea></div>' +
'<div class="checkBox"><label for="localSupport">Ich benötige Hilfe vor Ort</label><input type="checkbox" id="localSupport"></div>' +
'<div class="checkBox"><label for="noKeyboard">Ich verfüge nicht über eine Tastatur</label><input type="checkbox" id="noKeyboard"></div>' +
'<div class="btn" id="sendMessage">Störmeldung absetzen</div>
</div>'
);
}
$("body").prepend(createModal());
$(".modalContainer").append(createMessage());
$(".secondModal .modalBody").append(inputMessage());
.modal {
background: rgba(0, 0, 0, 0.8);
position: fixed;
top: 0;
left: 0;
height: 100%;
width: 100%;
z-index: 1000;
.modal .modalContainer {
margin: 5% auto;
width: 75%;
height: 80%;
box-sizing: border-box;
position: relative;
border: 2px solid black;
}
}
$( "#idForUnderlyingHtml" ).keydown(function( event ) {
event.stopImmediatePropagation();
event.preventDefault();
return false;
});