sergionic
31.08.2017, 22:55
Добрый день!
Пытаюсь написать расширение для FF используя современный способ, а именно с помощью WebExtensionsAPI как описано здесь (https://developer.mozilla.org/en-US/Add-ons)
собственно скрипт простой - по нажатию кнопки (Alt+S) должно открываться окошко с поиском в гугле выделенного текста
но, почему-то этого не происходит.
back.js:
browser.commands.onCommand.addListener(function(co mmand) {
if (command == "toggle-feature") {
var selectedText = window.getSelection().toString().trim();
console.log("selectedText:" + selectedText);
browser.tabs.create({
"url": "https://www.google.com/search?q="+selectedText
});
}
});
manifest.json:
{
"name": "Sample Commands Extension",
"description": "Press Alt+S to find in Google",
"manifest_version": 2,
"version": "1.0",
"background": {
"scripts": ["back.js"]
},
"commands": {
"toggle-feature": {
"suggested_key": { "default": "Alt+S" },
"description": "Send a 'toggle-feature' event to the extension"
}
}
}
куски кода честно скопипащены с их примеров отсюда:
работа с хоткеями (https://github.com/mdn/webextensions-examples/tree/master/commands)
работа с выделенным текстом (https://github.com/mdn/webextensions-examples/tree/master/selection-to-clipboard)
и если на клавишу скрипт реагирует, то с выделением работать не хочет
в оригинале там обработчик висит на отпускание кнопки мыши и сразу копирование в буфер обмена
а у меня висит перехват события на нажатие сочетания клавиш
но с буфером почему-то не получается...
выделенные текст не выводит даже в консоль...
где-то маленький косяк, не пойму где...
спасибо
Пытаюсь написать расширение для FF используя современный способ, а именно с помощью WebExtensionsAPI как описано здесь (https://developer.mozilla.org/en-US/Add-ons)
собственно скрипт простой - по нажатию кнопки (Alt+S) должно открываться окошко с поиском в гугле выделенного текста
но, почему-то этого не происходит.
back.js:
browser.commands.onCommand.addListener(function(co mmand) {
if (command == "toggle-feature") {
var selectedText = window.getSelection().toString().trim();
console.log("selectedText:" + selectedText);
browser.tabs.create({
"url": "https://www.google.com/search?q="+selectedText
});
}
});
manifest.json:
{
"name": "Sample Commands Extension",
"description": "Press Alt+S to find in Google",
"manifest_version": 2,
"version": "1.0",
"background": {
"scripts": ["back.js"]
},
"commands": {
"toggle-feature": {
"suggested_key": { "default": "Alt+S" },
"description": "Send a 'toggle-feature' event to the extension"
}
}
}
куски кода честно скопипащены с их примеров отсюда:
работа с хоткеями (https://github.com/mdn/webextensions-examples/tree/master/commands)
работа с выделенным текстом (https://github.com/mdn/webextensions-examples/tree/master/selection-to-clipboard)
и если на клавишу скрипт реагирует, то с выделением работать не хочет
в оригинале там обработчик висит на отпускание кнопки мыши и сразу копирование в буфер обмена
а у меня висит перехват события на нажатие сочетания клавиш
но с буфером почему-то не получается...
выделенные текст не выводит даже в консоль...
где-то маленький косяк, не пойму где...
спасибо