Native JavaScript Extensions

Native JavaScript Extensions is an Opera developed technique for
extending the JavaScript environment in regular HTML documents with
customer-made objects implemented in a compiled language.

It provides two things:

- the ability to implement JavaScript objects with properties and methods
- the ability to implement custom OBJECT elements

These objects usually have no visual representation (even though it
can be achieved through controlling the Document Object Model).

Leverage on experience built up with existing web standards.

Common uses include:

- controlling the tuner in a set-top-box

Control the tuner, Video On Demand and/or Pay Per View from attractive HTML documents styled with Cascading Style Sheets (CSS).

- displaying status of eg a battery charge level or signal strength in a portable device

Creating a custom "Home page" on a mobile phone is modelled in
http://www.opera.com/products/smartphone/platform/ . It has never been
easier!

- displaying and controlling settings

The manufacturer/systems integrator now has the possibility to create
a "control panel" (settings panel) entirely in HTML, CSS and
JavaScript for the device in question. This saves time and valuable
flash space from not having to include specially written applications.

- other uses ...

Use is not limited to these applications -- anything that can be done
on the device in native code can be done via Native JavaScript Extensions. 
For example, Native JavaScript Extensions has also been
used to implement a barcode scanner that interfaces with an HTML
document.
