By Opera Software

From Opera 15 onward, Opera 11 & 12’s extension format is no longer supported, and instead, we’ve switched to Chromium’s extension model. Check out our new documentation for developing extensions for Opera 15 and higher and start building your own extensions.


The pageURL attribute is the URL of the top-level document of the current web page. For URLs of a document within a frame, please use MenuEvent.documentURL.


readonly DOMString pageURL


In this example, a menu item is added to the context menu. When the menu item is clicked, the current page opens in a new private tab.

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

window.addEventListener('DOMContentLoaded', function() {
  // Check the Context Menu API is supported
  if ( {
    var menu =;
    // Create a menu item properties object
    var itemProps = {
      title: 'Privatize',
      onclick: function(event) {
        // Create a tab properties object
        var tabProps = {
          url: event.pageURL,
          private: true

        // Create a tab with the specified properties
        var tab = opera.extension.tabs.create(tabProps);

    // Create a menu item with the specified properties
    var item = menu.createItem(itemProps);
    // Add the menu item to the context menu
  } else {
      console.error('Context Menu API not supported.');
}, false);

This article is licensed under a Creative Commons Attribution 3.0 Unported license.


No new comments accepted.