我有一个 C#.NET MVC3 Web 应用程序,我想在文档上捕获 key up 事件。也就是说,我想知道用户是否选择了“CTL->Z”来撤消他们在网络视图上的数据更改。我该怎么做?
1501 次
2 回答
2
我想这就是你要找的:
var ctrlDown = false;
$(document).keydown(function (e) {
if (e.which == 17)
ctrlDown = true;
if (e.which == 90)
if (ctrlDown)
console.log("control Z");
});
$(document).keyup(function (e) {
if (e.which == 17)
ctrlDown = false;
});
编辑
我不确定 mesiesta 的答案中的 e.ctrlKey 是否支持跨浏览器,但如果是,您可以更简单地做:
$(document).keydown(function (e) {
if (e.which == 90 && e.ctrlKey)
console.log("control Z");
});
于 2011-12-05T20:17:16.470 回答
1
你可以尝试使用这个Ctrl + Key Combination – Simple Jquery Plugin
。我从未尝试过使用它,但这似乎是一个很好的解决方案)))
链接在这里
http://www.gmarwaha.com/blog/2009/06/16/ctrl-key-combination-simple-jquery-plugin/
所以这是功能代码
$.ctrl = function(key, callback, args) {
$(document).keydown(function(e) {
if(!args) args=[]; // IE barks when args is null
if(e.keyCode == key.charCodeAt(0) && e.ctrlKey) {
callback.apply(this, args);
return false;
}
});
};
然后在你的代码中你必须只写
$.ctrl('Z', function() {
//What you want to do
});
于 2011-12-05T20:26:07.413 回答