« Documentation Home


This documentation relates to Opera's now deprecated .oex Extension API framework for Opera versions <= 12.15 and also provided by our OEX2NEX shim library.

For the latest Opera Extensions API documentation for Opera versions > 12.15 please consult the latest Opera Extensions API documentation online.


The read-only parent attribute is the parent object on which the current context menu item resides. By default, and on object creation, this attribute is set to null.


readonly MenuContext parent


The following example creates a main menu item and two sub-menu items. The sub-menu items refer to the parent object to set their icons.

  The configuration file ('config.xml').
<?xml version='1.0' encoding='utf-8'?>
<widget xmlns="http://www.w3.org/ns/widgets">
    <feature name="opera:contextmenus"/>
// The background process (e.g. index.html)

if (opera.contexts.menu) {
  var menu = opera.contexts.menu;
  // Create menu item properties objects
  var itemProps = {
    title: 'Translate this page',
    icon: 'images/translate.png',
    type: 'folder'
  var itemPropsEnglish = {
    title: 'English',
    onclick: function(event) {
      doTranslate(event.pageURL, 'English');
  var itemPropsJapanese = {
    title: 'Japanese',
    onclick: function(event) {
      doTranslate(event.pageURL, 'Japanese');

  // Create menu items with the specified properties
  var item = menu.createItem(itemProps);
  var itemEnglish = menu.createItem(itemPropsEnglish);
  var itemJapanese = menu.createItem(itemPropsJapanese);
  // Add the menu item to the context menu
  // Add the sub-menu items to the main menu item, with the same icon
  itemEnglish.icon = itemEnglish.parent.icon;
  itemJapanese.icon = itemJapanese.parent.icon;