Developers › Dev.Opera

MenuEvent.target

August 24, 2012 · by Opera Software

This functionality has not landed in a stable Opera version yet, but you can use it already in Opera Next.

Description:

The target attribute is a MenuItemProxy object created from the MenuItem object on which the current event was fired. This can be used to access a menu item's attributes, such as id, title, etc.

Syntax:

readonly MenuItemProxy target

Example:

In this example, a menu item is added to the context menu for editable elements only. When the menu item is clicked, the menu item's ID (an email address) is then inserted into the editable element.

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

if (opera.contexts.menu) {
  var menu = opera.contexts.menu;
  
  // Create a menu item properties object
  var itemProps = {
    contexts: ['editable'],
    title: 'Mail autofill',
    id: '[email protected]'
  }

  // Create a menu item with the specified properties
  var item = menu.createItem(itemProps);
  // Add the menu item to the context menu
  menu.addItem(item);
}
//
// An injected script (e.g. '/includes/injected.js').
//

  // Insert the menu item's ID into the target element
  opera.contexts.menu.onclick = function(menuEvent) {
    menuEvent.srcElement.value = menuEvent.target.id;
  };
})();

About this article

Published inDev.Opera
DateAugust 24, 2012
AuthorOpera Software
Tagscontext menu, extensions API
OriginalInternet Archive