2014-11-02 1 views
1

나는 Google에서 주어진 단어를 검색하는 기존 addon을 사용했습니다. 다음은 링크입니다 : https://addons.mozilla.org/en-US/firefox/addon/inline-google-search/?src=apifirefox addon에 Hotkey 기능을 추가 할 수 없습니다.

Addon은 텍스트를 선택한 다음 마우스 오른쪽 버튼으로 클릭하고 google에서 검색 할 수있는 옵션을 제공합니다.

exports.main = function() {}; 
var panel = require("sdk/panel").Panel({ 
    width:700, 
    height: 500, 
    contentURL: "about:blank", 
    onHide : function(){ 
     this.contentURL = "about:blank" 
    } 
}); 

var contextMenu = require("sdk/context-menu"); 
var menuItem = contextMenu.Item({ 
    label: "Search Google Inline", 
    context: contextMenu.SelectionContext(), 
    contentScript: 'self.on("click", function() {' + 
       ' var text = window.getSelection().toString();' + 
       ' self.postMessage(text);' + 
       '});', 
    onMessage: function (selectionText) { 
    panel.contentURL = "https://www.google.co.in/search?q="+selectionText; 
    panel.show(); 
    } 
}); 

텍스트를 선택하고 Ctrl 키 + D를 Shift 키를 누른 후, 검색은 구글의 텍스트에 대해 수행 될 수 있도록 내가 기능을 추가하고있다 : 아래

의 주요 JS 파일입니다. 마지막에 나를 추가

몇 가지 추가 라인 :

var { Hotkey } = require("sdk/hotkeys"); 
var selection = require("sdk/selection"); 

var showHotKey = Hotkey({ 
    combo: "accel-shift-d", 
    onPress: function() { 
     panel.contentURL = "https://www.google.co.in/search?q="+selection.text; 
     panel.show(); 
    } 
}); 

내가 여기에서 발견 된 위의 코드 : 또한있는 내가 업데이트 파일 하네스 - options.json, 거기

Access selected text within a Hotkey object sha256 main.js 파일의 합계 및 매니페스트 섹션에 sdk/hotkeys 및 sdk/selection 요구 사항을 추가했습니다.

하지만 설치 후 애드온이 작동하지 않습니다. 컨텍스트 메뉴 옵션조차도 더 이상 나타나지 않습니다. 그래서 코드를 어긴 것 같습니다.

내가 뭘 잘못하고 있니?

답변

1

addon을 편집하는 대신 cfx 및 addon-sdk를 사용하여 처음부터 만들었고 제대로 작동했습니다.

+0

네, 방금 코드를 실행했는데 잘 돌아갔습니다. – canuckistani

관련 문제