【发布时间】:2015-08-27 16:42:28
【问题描述】:
上下文:我正在创建一个“人造命令行”网站。您可以在 div 中的虚假提示符下键入命令。
问题:如果您输入错误并需要退格一两个字符怎么办?按退格键后,我的浏览器会返回上一个网页。
我的一半解决方案:通过检测键禁用浏览器中的退格功能。我通过检测退格的'keydown'事件并返回false来做到这一点。但是现在浏览器功能已被阻止(返回 false),事件结束了。我无法对将执行我正在尝试创建的退格功能的事件调用以下函数。
我的问题:你如何阻止功能,然后继续事件并调用函数来做我想做的事情(警报、函数调用等)?
请到我的 CodePen 查看完整代码。但这里有一个 sn-p:
$(document).keydown(function(e) {
if (e.keyCode == 8) {
return false;
**//I need to call a function here!!!!!!**
} else {
prompt.keyDetector(e);
}
});
【问题讨论】:
-
为什么不使用
<input type="text">或<textarea>来获取用户的输入?默认情况下,这些元素会阻止此行为。 -
尝试使用
e.preventDefault()或e.stopPropagation() -
看! J Santosh 回答了我的问题。谢谢!!!
标签: javascript jquery