• Skip to main content
  • Select language
  • Skip to search
MDN Web Docs
  • Technologies
    • HTML
    • CSS
    • JavaScript
    • Graphics
    • HTTP
    • APIs / DOM
    • WebExtensions
    • MathML
  • References & Guides
    • Learn web development
    • Tutorials
    • References
    • Developer Guides
    • Accessibility
    • Game development
    • ...more docs
B2G OS
  1. MDN
  2. Archive of obsolete content
  3. B2G OS
  4. B2G OS APIs
  5. MozNFC
  6. MozNFC.onpeerlost

MozNFC.onpeerlost

In This Article
  1. Syntax
  2. Example
  3. Properties
  4. Specifications
  5. Browser compatibility
  6. See also

The onpeerlost event handler of the MozNFC interface handles the peerlost event, which is fired when the MozNFCPeer object received in MozNFC.onpeerready  is no longer available or not in proximinty (e.g. the peer device moves out of range.).

peerlost is only able to be fired for an app that has already previously received peerready. Image the following use case:

  1. In WebApp-Foo, a user bumps another device, and the Sharing UI pops up.
  2. The user shares the content, and the Sharing UI finishes.
  3. The user switches to another app, WebApp-Bar, which may have also registered peerlost. 
  4. The user now moves away from the other device. At this point Gecko will fire a peerlost event on the former foreground app, WebApp-Foo, because that's the app that received the peerready event.

Syntax

attribute EventHandler onpeerlost;

Example

var tnf     = 1;                                             // NFC Forum Well Known type
var type    = new Uint8Array(fromUTF8("U"));                 // URL type
var id      = new Uint8Array(fromUTF8(""));                  // id
var payload = new Uint8Array(fromUTF8("\u0003mozilla.org")); // URL data, with a record prefix 0x3 replacing http://
var ndefRecords = [new MozNDEFRecord(tnf, type, id, payload)];
var nfcdom = window.navigator.mozNfc;
nfcdom.onpeerready = function(event) {
  var nfcPeer = nfcdom.getNFCPeer(event.detail);  // 'event.detail' has session id.
  var req = nfcpeer.sendNDEF(ndefRecords);        // push NDEF message to other NFC device.
  req.onsuccess = function(e) {
    console.log("Successfully pushed P2P message");
  };
  req.onerror = function(e) {
    console.log("P2P push failed!");
  };
};
nfcdom.onpeerlost() {
  console.log("Your peer has been lost.");
}

Properties

None.

Specifications

The NFC implementation in Gecko follows the NFC Forum specifications.

Browser compatibility

  • Desktop
  • Mobile
Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support

No support

No support No support No support No support
Feature Android Firefox Mobile (Gecko) Firefox OS (Gecko) IE Phone Opera Mobile Safari Mobile
Basic support No support No support 2.0 moz [1] No support No support No support

[1] Available in privileged apps as of Firefox OS 2.2; certified-only before that.

See also

  • Using the NFC API
  • Using the NFC emulator
  • Related W3C APIs:
    • NFCPeer spec
    • NFCTag spec

Document Tags and Contributors

Tags: 
  • API
  • Firefox OS
  • MozNFC
  • NFC
  • onpeerlost
  • Property
  • Reference
 Contributors to this page: chrisdavidmills, fscholz, teoli, allstars.chh
 Last updated by: chrisdavidmills, Feb 27, 2017, 2:09:09 AM
See also
  1. NFC API
  2. Archive
  3. Related pages for NFC API
    1. MozNDEFRecord
    2. MozNFC
    3. MozNFCPeer
    4. MozNFCTag