orientation.js 654 B

1234567891011121314151617181920212223242526
  1. var Emitter = require('./Emitter');
  2. var safeGet = require('./safeGet');
  3. var screen = window.screen;
  4. exports = {
  5. get: function() {
  6. if (screen) {
  7. var orientation = safeGet(screen, 'orientation.type');
  8. if (orientation) return orientation.split('-').shift();
  9. }
  10. return window.innerWidth > window.innerHeight
  11. ? 'landscape'
  12. : 'portrait';
  13. }
  14. };
  15. Emitter.mixin(exports);
  16. window.addEventListener(
  17. 'orientationchange',
  18. function() {
  19. setTimeout(function() {
  20. exports.emit('change', exports.get());
  21. }, 200);
  22. },
  23. false
  24. );
  25. module.exports = exports;