6 .net javascript c# browser keyboard
我有一个.NET WebBrowser控件,我用它来显示我编写的一些javascript密集的页面.页面使用YUI,并以可移植的方式构建.
我刚刚发现虽然我可以在javascript中捕获keypress,但我似乎无法在javascript中捕获keyup或keydown .这可以防止我挂钩ESC,CTRL + A,UP,RIGHT,TAB等.
我知道我可以捕获.NET中的密钥,并且其中一些存在"黑客".例如,CTRL + A的Document.ExecCommand("SelectAll",..,..).---顺便说一句,我仍然无法让SendKeys.Send("{TAB}")为标签---工作.我意识到我可以使用.NET来执行处理UP箭头的函数,但出于可移植性和最佳实践的原因,我真的不想这样做.
谁能解释为什么我无法捕获javascript中的keyup/keydown事件或建议解决方法?
谢谢!
小智 0
我写了一些代码来展示如何在 JavaScript 中捕获箭头键按下。我已经在 IE 和 FireFox 中测试过了,所以应该没问题......
<input id="Text1" type="text" onkeydown="keyPress(event)" />
<script type="text/javascript">
function keyPress(e)
{
var textBox = document.getElementById('Text1');
var keynum;
if (window.event) // IE
keynum = e.keyCode;
if (e.which) // Other browser
keynum = e.which;
switch (keynum)
{
case 38:
textBox.value = 'Up Arrow';
break;
case 37:
textBox.value = 'Left Arrow';
break;
case 40:
textBox.value = 'Down Arrow';
break;
case 39:
textBox.value = 'Right Arrrow';
break;
default:
textBox.value = 'Another key';
break;
}
}
</script>
Run Code Online (Sandbox Code Playgroud)
希望能帮助到你 :)
| 归档时间: |
|
| 查看次数: |
3348 次 |
| 最近记录: |