« Documentation Home

MenuItem.targetURLPatterns

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.

Description:

The targetURLPatterns attribute is an array of rules specifying which link target domains a menu item should be visible for. This attribute is only effective when the context menu is activated on a link, in other words, only when the item's contexts array contains link or all. If this attribute is null (default) or an empty array then the menu item will appear for all target domains. Note that * can be used as a wildcard.

Syntax:

DOMString[] targetURLPatterns

Example:

The following example creates an item in the context menu only for links that link to the opera.com domain.

<!-- 
  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. index.html)
//

if (opera.contexts.menu) {
  var menu = opera.contexts.menu;
  // Create a menu item properties object
  var itemProps = {
    title: 'Translate this link',
    contexts: ['link'],
    targetURLPatterns: [
      'http://opera.com/*',
      'https://opera.com/*',
      'http://*.opera.com/*',
      'https://*.opera.com/*'
    ],
    onclick: function(event) {
      doTranslate(event.linkURL);
    }
  }

  // Create a menu item with the specified properties
  var item = menu.createItem(itemProps);
  // Add the menu item to the context menu
  menu.addItem(item);
}