JSPM

  • Created
  • Published
  • Downloads 21341650
  • Score
    100M100P100Q215972F

a browser detector

Package Exports

  • bowser
  • bowser/bowser
  • bowser/src/bowser

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (bowser) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Bowser

A Browser detector. Because sometimes, there is no other way, and not even good modern browsers always provide good feature detection mechanisms.

So... it works like this:

if (bowser.msie && bowser.version <= 6) {
  alert('Hello China');
}

Detected Browsers

  • msie
  • safari[webkit]
  • chrome[webkit]
  • firefox[gecko]
  • opera

Notes

Safari, Chrome, and Firefox will report that they have webkit|gecko engines

if (bowser.webkit) {
  // do stuff with safari & chrome
}

Ender installation

If you don't already have Ender (an npm package) install it now (and don't look back)

$ npm install ender

then add bowser to your module collection

$ ender add bowser

use it like this:

if ($.browser.chrome) {
  alert('Hello Silicon Valley');
}

Graded Browser Support

One useful feature of Bowser is that aside from checking one browser from another -- it will keep up to date with Yahoo's Graded Browser Support chart, giving you access to each grade on the bowser object

if (bowser.a) {
  // support full feature set
}
else if (bowser.c) {
  // serve degraded version
}
else {
  // unsupported (bowser.x)
}