2016-03-22 91 views
1

我使用Silverlight 4.0,其中我试图开发一个Web application.In这个应用我实现keyboard快捷键像Ctrl+c,Ctrl+U etc..在浏览器中同时使用Ctrl+U,调试窗口打开。是否有任何方法覆盖这些默认行为?如何替代键盘按键的默认行为在Silverlight

回答

2

您可以通过在文档中添加eventListner来实现此目的。

 document.addEventListener('keydown', keydownevent); 

     function keydownevent (event){ 
      if(event.ctrlKey && event.keyCode == 85){ 
       event.preventDefault(); 
       alert("You have pressed ctrl+u") 
      } 
     } 

现在文档将一直监听keydown event。为了消除这个事件中,你需要从文件中删除eventListner当你的页面的socpe结束的

document.removeEventListener('keydown', keydownevent); 
0

如果您希望阻止分配的默认操作,则可以使用javascript

document.body.onkeydown = function(e){ 
    //verify the control press you want to prevent and call preventDefault() 
    //ex : if (e.ctrlKey && e.which == 84) 
    e.preventDefault(); 
}; 
+0

我需要访问按Ctrl + U键一起,这是不通过JavaScript访问。 – VVN

+0

@VVN实际上你可以,如果按下Ctrl键,'e.ctrlKey'将是'true'。 http://www.w3schools.com/jsref/event_ctrlkey.asp –