2013-05-25 54 views
0

發展,它需要我有上下文菜單如下:
enter image description here開始使用我一直在問我的朋友,使Chrome瀏覽器的應用程序爲Chrome

我從來沒有真正爲Chrome做什麼之前和我有幾個關於它的問題:

  1. 我將不得不開發一個plug-in,對吧?
  2. 如果是這樣,是否有一套我必須遵循的特定規則?

我知道我可以使用GWT將Java編譯成JavaScript
3.本上下文相關菜單是一樣的JPopupMenu

我要開發的應用程序很簡單:
複製一些文字,
單擊鼠標右鍵,單擊上下文相關菜單
將簡單的凱撒密碼的文本
上打開一個新的JFrameJtextArea它顯示加密文本。

+1

1.不,你將會開發一個擴展。 3.我建議堅持使用vanilla JavaScript,因爲在文檔和Stack Overflow中有很多示例幫助您開發擴展。你只需要知道相關的API。參見['chrome.contextMenus'](https://developer.chrome.com/extensions/contextMenus.html)創建上下文菜單條目,['chrome.windows.create'](https://developer.chrome。 com/extensions/windows.html#method-create)創建一個窗口和[入門](https://developer.chrome.com/extensions/getstarted.html),好吧,開始吧! –

+0

@RobW發佈這個答案,我可以接受它:)如果你想要添加更多的東西 –

回答

2
  1. 您創建的內容稱爲「extension」,而不是「插件」。瀏覽器擴展使用HTML,CSS和Javascript編寫,並且可以訪問API以便與瀏覽器直接交互。另一方面,另一方面,它們是編譯的二進制文件,如Flash和Java。

  2. 跌落使用GWT的Chrome擴展的想法。它使得擴展的開發變得更加困難,並不容易(open issue)。
    尤其是因爲您會在the documentation和Stack Overflow中找到大量的香草JavaScript示例和教程。

你只需要知道相關的API:

複製一些文字, 單擊鼠標右鍵,單擊上下文相關菜單

使用chrome.contextMenus。沒有必要複製,所選文本在回調中可用(examples)。

將簡單的凱撒密碼的文本

創建一個JavaScript函數來實現這一目標。

使用JtextArea打開一個新的JFrame以顯示加密的文本。

使用chrome.windows.create創建一個新窗口。您可以在擴展中包含一個額外的HTML頁面,並使用​​填充文本字段,但由於您看起來是一個完整的新手,因此我會顯示一個簡單的複製粘貼方法來創建並填充此窗口:

function displayText(title, text) { 
    var escapeHTML = function(s) { return (s+'').replace(/</g, '&lt;'); }; 
    var style = '*{width:100%;height:100%;box-sizing:border-box}'; 
    style += 'html,body{margin:0;padding:0;}'; 
    style += 'textarea{display:block;}'; 
    var html = '<!DOCTYPE html>'; 
    html += '<html><head><title>'; 
    html += escapeHTML(title); 
    html += '</title>'; 
    html += '<style>' + style + '</style>'; 
    html += '</head><body><textarea>'; 
    html += escapeHTML(text); 
    html += '</body></html>' 

    var url = 'data:text/html,' + encodeURIComponent(html); 
    chrome.windows.create({ 
     url: url, 
     focused: true 
    }); 
} 

不要忘記閱讀Getting started瞭解更多關於擴展的基礎設施。

相關問題