2016-03-22 112 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 –