Как настроить контекстное меню в Google Chrome, чтобы все меню были на верхнем уровне? - PullRequest
4 голосов
/ 11 октября 2011

Я работаю над расширением Google Chrome и настроил несколько пунктов контекстного меню, вызываемых правой кнопкой мыши. Я вижу, что в синтаксисе есть что-то для добавления пункта меню, которое позволяет вам выбрать parentID, но я не вижу ничего, что позволило бы вам выбрать все элементы меню в качестве элементов верхнего уровня.

Вот пример моего плагина с одним элементом меню верхнего уровня, а затем несколькими элементами подменю:

Снимок экрана 2011-10-10 в 11.51.00 PM.png http://img571.imageshack.us/img571/6360/screenshot20111010at115.png

Я бы хотел вывести их на верхний уровень, потому что я часто их использую. Это код, который у меня есть до сих пор, но я не могу понять, как вывести их всех на уровень:

chrome.contextMenus.create({'title': 'Send URL to Quicksilver',
                            'contexts': ['all'],
                            'onclick': sendToQuicksilver});

chrome.contextMenus.create({'title': 'Send File to Quicksilver',
                            'contexts': ['all'],
                            'onclick': sendFileToQuicksilver});


chrome.contextMenus.create({'title': 'Quick Download',
                            'contexts': ['all'],
                            'onclick': quickDownload});


chrome.contextMenus.create({'title': 'Edit in Textmate',
                            'contexts': ['all'],
                            'onclick': editInTextmate});


chrome.contextMenus.create({'title': 'Open Project in Textmate',
                            'contexts': ['all'],
                            'onclick': editProjectInTextmate});

Ответы [ 2 ]

8 голосов
/ 11 октября 2011

Это невозможно, вам разрешено создавать только одно меню верхнего уровня для каждого расширения.

Из спецификации :

Вы можете создать столько контекстапункты меню, которые вам нужны, но если сразу видно несколько из вашего расширения, Google Chrome автоматически сворачивает их в одно родительское меню.

2 голосов
/ 11 октября 2011

Серг прав, это невозможно с меню Chrome.Если вы хотите заменить все меню, вызываемое правой кнопкой мыши, это возможно:

http://davidwalsh.name/mootools-context-menu

Существует несколько других плагинов / рамок для замены меню.Вы рассматривали просто добавление строки меню на интересующие вас страницы?

http://www.hongkiat.com/blog/drop-down-menu-30-free-scripts-to-enhance-header-navigation/

Вы можете одним щелчком мыши получить доступ к нужным пунктам меню.

...