2013-05-25 2 views
0

Я спросил мой друг, чтобы сделать приложение для Chrome, и это требует от меня, чтобы иметь контекстное меню, как показано ниже:
enter image description hereНачала работы с разработкой для Chrome

Я действительно никогда не сделал ничего для Chrome до и у меня есть несколько вопросов относительно этого:

  1. Мне нужно будет разработать plug-in, верно?
  2. Если да, то есть ли определенный набор правил, которым я должен следовать?

Я знаю, что могу использовать GWT для компиляции Java в JavaScript
3. Это контекстное меню такое же, как JPopupMenu?

Применение Я хочу разработать простой:
скопировать текст,
правой кнопкой мыши, выберите в контекстном зависимом меню
применить шифр простых Цезаря к тексту
открыть новый JFrame с JtextArea в нем для отображения зашифрованного текста.

+1

1. Нет, вы будете развивать расширение. 3. Я предлагаю придерживаться ванильного JavaScript, потому что в документации и в переполнении стека есть много примеров, которые помогут вам в разработке расширения. Вам просто нужно знать соответствующий 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 для прямого взаимодействия с браузером.
    Plug-ins, с другой стороны, скомпилированы двоичные файлы, такие как Flash и Java.

  2. Капля идея использования GWT для расширений Chrome. Это делает развитие расширения сложнее, а не проще (open issue).
    Тем более, что вы найдете множество примеров и руководств по ванильным JavaScript в the documentation и Stack Overflow.

Вы просто должны знать соответствующие API-интерфейсы:

скопировать текст, правой кнопкой мыши, нажмите на контекстное меню

Использование chrome.contextMenus. Копировать нет необходимости, выбранный текст доступен в обратном вызове (examples).

применять шифр простых Цезаря к тексту

Создание функции JavaScript для достижения этой цели.

Открыть новый JFrame с JtextArea в нем для отображения зашифрованного текста.

Создать новое окно, используя chrome.windows.create. Вы можете добавить дополнительную HTML-страницу в своем расширении и использовать message passing APIs для заполнения текстового поля, но поскольку вы, как представляется, являетесь полноправным новичком, я показываю простой способ копирования и вставки для создания и заполнения этого окна:

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, чтобы узнать больше о инфраструктуре расширения.

0

Заканчивать Google Chrome Extensions Chrome Extensions

Начало работы поможет вам Getting Started

Вы найдете раздел о том, как использовать Контекстное меню.

Смежные вопросы