« Documentation Home

RuleOptions.includeDomains

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:

An array of zero or more domains on which to apply a given URL Filter rule.

This property is passed within a RuleOptions object as a parameter for URL Filter methods.

Syntax:

DOMString[] includeDomains

Example:

The following example blocks any content with /ads/ in the URL except from ||huffpost.com/images/ads/* and when included in pages in the huffingtonpost.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:urlfilter"/>
</widget>
//
// The background process (e.g. index.html)
//

// Check that the URL Filter API exists
if (typeof opera.extension.urlfilter != 'undefined') {  
  // Assign the URLFilter object to a variable for efficiency
  var filter = opera.extension.urlfilter;
  
  filter.block.add('*/ads/*');
  
  // The following is the same as this Adblock syntax for whitelisting:
  // @@||huffpost.com/images/ads/$domain=huffingtonpost.com
  var ruleOptions = {
    includeDomains: ['huffingtonpost.com']
  }
  filter.allow.add('||huffpost.com/images/ads/*', ruleOptions);
}

Note the use of || which is a hostname mark. This indicates that the subsequent characters should begin matching from any host name in the URL. For example, ||example.com* matches http://example.com/, https://www.example.com/, or similar. However, it will not match http://badexample.com/.