UNPKG

zent

Version:

一套前端设计语言和基于React的实现

50 lines (37 loc) 1.04 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports['default'] = function () { var selection = document.getSelection(); if (!selection.rangeCount) { return _noop2['default']; } var active = document.activeElement; var ranges = []; for (var i = 0; i < selection.rangeCount; i++) { ranges.push(selection.getRangeAt(i)); } switch (active.tagName.toUpperCase()) {// .toUpperCase handles XHTML case 'INPUT': case 'TEXTAREA': active.blur(); break; default: active = null; break; } selection.removeAllRanges(); return function () { selection.type === 'Caret' && selection.removeAllRanges(); if (!selection.rangeCount) { ranges.forEach(function (range) { selection.addRange(range); }); } active && active.focus(); }; }; var _noop = require('lodash/noop'); var _noop2 = _interopRequireDefault(_noop); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }