The Netscape Navigator

Mike Taylor, Opera Software

@miketaylr
Peter Higgins
Alex Russell
Some dude

Hi, I'm Mike*

  • Web Opener, Developer Relations & Tools. Opera Software
  • Two time college dropout
  • World's foremost living expert on the syntactic structure of non-standard 3rd person pronouns of the dialect of Brazilian Portuguese spoken in Piripiri, Piauí. Or whatever.
*Quadruple fakeout™

Language Change

Bayeux Tapestry

Diachronic Change

  • Phonetic
  • Phonemic
  • Syntactic
  • Morphological
  • Lexical
  • Etc.

Luke 2:1

Soþlice on þam dagum wæs geworden gebod fram þam casere augusto. þæt eall ymbehwyrft wære tomearcod

Forsoþe it is don, in þo daÿis a maundement wente out fro cesar august, þat al þe world shulde ben discriued

And it came to passe in those dayes, that there went out a decree from Cesar Augustus, that all the world should be taxed.

Netscape Navigator

Scumbag Navigator
Mayan glyph

The Future

Dino eating a dino

navigator.registerContentHandler()

The registerContentHandler() method allows sites to register themselves as possible handlers for content in a particular MIME type.

  • navigator.unregisterContentHandler()
  • navigator.isContentHandlerRegistered()

Blacklisted schemes

  • text/css
  • text/plain
  • text/html
  • text/ping
  • image/gif
  • text/cache-manifest
  • text/html-sandboxed
  • application/x-www-form-urlencoded
  • image/jpeg
  • image/png

AddType text/x-cheeseburger .cheeseburger

cheeseburger syntax diagram

Content Registration

        navigator.registerContentHandler(
          "text/x-cheeseburger",   //MIME type 
          "/code/cb.html?cb=%s",  //handler
          "Cheeseburger Parser"    //title
        );
      

Cheeseburger
Dbl Cheeseburger

navigator.registerProtocolHandler()

The registerProtocolHandler() method allows Web sites to register themselves as possible handlers for particular schemes.

  • navigator.unregisterProtocolHandler()
  • navigator.isProtocolHandlerRegistered()

Whitelisted schemes

  • irc
  • mailto
  • mms
  • news
  • nntp
  • sms
  • smsto
  • tel
  • urn
  • webcal

Custom web+ schemes

  • web+viewsource
  • web+auth
  • web+cheeseburger

Protocol Registration

        navigator.registerProtocolHandler(
          "tel",                             //protocol 
          "/pres/protocolhandler.html?%s",  //handler
          "Telephony"                        //title
        );
      

tel:3473722666

navigator.getUserMedia()

Prompts the user for permission to use their Web cam or other video or audio input.

Simple Example

        navigator.getUserMedia("video",
          function(stream){
            video.src = stream;
          }, 
          fallback
        });
      

tablet demo

    

Additional Stuff

  • navigator.onLine
    • online events
    • offline events
  • navigator.geolocation v2
    • Proximity Alarms
    • Address Object
  • navigator.device.*

Thank You!

Get in touch.