2013-03-04 2 views
2

에 따라 일부 questions 키 조합을 방지하는 방법을 알아 냈습니다.브라우저 단축키 기본값을 바꾸는 방법

하지만 짧은 키를 정의 할 ...

하나의 방법은 JQuery와에 bind() 기능을 사용하는 것입니다, 그리고 문제는 키의 기본 작업은 여전히 ​​작동하고있다. i.e: Ctrl+s = savepage

어떤 해결책이 있습니까?

+0

지금까지 조사한 내용이 있습니까? 어떤 브라우저를 사용하고 있습니까? –

+1

은 모든 주요 브라우저를위한 방법이 필요합니다. – Pooya

+0

정직하게 말하자면, 브라우저의 키보드 단축키가 반대쪽보다 일부 웹 사이트의 브라우저 단축키를 선호합니다 .-) –

답변

1

당신이 연결 한 질문은 당신이 찾고 있던 것과 정확히 같지 않지만 같은 개념을 사용할 수 있습니다. 다음은 jQuery를 동등한은 Ctrl + S를 위해 크롬, 파이어 폭스와 IE에서 테스트

http://jsfiddle.net/SEQVD/3/

$(document).on("keydown",function(e){ 
    if (e.originalEvent.ctrlKey && e.which == 83/*"s"*/) { 
     setTimeout(function(){ //Fix for firefox. Ref: http://stackoverflow.com/questions/14860759/cant-override-ctrls-in-firefox-using-jquery-hotkeys 
      // do save stuff... 
      alert("Saved!"); // if you remove alert, you can remove setTimeout 
     },0); 
     return false; 
    } 
}); 
을 듣고있다.

+0

이것이 내가 원하는 것입니다 ... 팁이 있습니다. 'e.originalEvent.ctrlKey'를 사용하는 경우 ctrl + s 대신 – Pooya

0

바로 가기에 바인딩 한 이벤트에 preventDefault가 포함되어 있는지 확인하십시오. 이 e.stop() 또는 e.stopEvent() 같은 다른 될 수있는 다른 프레임 워크를 사용

function event(e) { 
    e.preventDefault(); 
} 

: 같은 JQuery와에서이 보일 것입니다.

관련 문제