1

다른 사람이 Google 크롬 확장에 연결된 코드의 자바 스크립트 조각에 "Ctrl + K"키를 어떻게 바인딩 할 수 있습니까? 이것은 열려있는 모든 웹 페이지에서 작동합니다. 매니페스트에서키 바인드 google 크롬 확장 기능에 대한 작업

+0

설명서 및 샘플 확장을 살펴 보았습니까? http://developer.chrome.com/extensions/commands.html – rsanchez

+0

예, 그렇지만 여전히 키 바인딩 클릭에 어떤 종류의 동작을 바인딩해야하는지 이해할 수 없기 때문에 혼란 스럽습니다. 나는 이것을 배경 페이지에 써야 하나? 그리고 어떻게하면 "ctrl + k"에 특별히 같은 함수를 작성해야합니까? – user2510745

답변

4

, 지정 :

"commands": { 
    "my-command-name": { 
    "suggested_key": { 
     "default": "Ctrl+K", 
    }, 
    "description": "My description" 
    } 
} 

다음, 당신의 배경 페이지에 당신이 할 수 있습니다

chrome.commands.onCommand.addListener(function(command) { 
    if(command === "my-command-name") { 
    // Do your stuff 
    } 
}); 

편집

한 가지 문제는 조합 것 같다 Ctrl+K은 일반적으로 다른 목적으로 사용되기 때문에 기본적으로 Chrome에서 할당되지 않습니다. Ctrl+K을 기본 바로 가기로 지정하면 명령에 바로 가기가 할당되지 않으며 사용자는 chrome://extensions 페이지의 맨 아래에있는 '키보드 바로 가기'링크에서 하나를 지정해야합니다.

과 같은 다른 조합을 사용하는 경우 Chrome에 자동으로 할당됩니다. 언급 된 링크에서 Shorcuts 지정을 항상 확인할 수 있으며 chrome.commands.getAll을 사용하여 프로그래밍 방식으로 지정할 수 있습니다.

또한 매니페스트를 변경하고 확장 프로그램을 다시로드하면 제안 된 바로 가기 키의 변경 사항이 적용되지 않습니다. Extension을 제거하고 다시 추가하여 제안 된 Shorcut 키를 고려해야합니다.

+0

흠 그 조건에 대해 확신합니까? 그것은 작동하지 않았다 ... 그 방법은 브라우저의 모든 페이지에서 확장 기능이 올바르게 활성화되어있는 한 작동해야한다고 생각하십니까? – user2510745

+0

@ user2510745 if 조건에 오타가있었습니다. 나는 또한 더 많은 정보를 추가했다. – rsanchez

+0

마침내 성공했습니다! 정말 고마워, 정말 고마워! 분명히 전체 확장을 다시로드해야했습니다. 기술적 인 이유를 알고 있습니까? 타이, 미리! – user2510745