UNPKG

@iicoding/utils

Version:

Browser 端 - 类型判断 - 类似 koa 的异步compose - sleep - 扩展对象属性 - 扩展 storage 对象功能

32 lines 938 B
export function toggleSelection() { var _active; var selection = document.getSelection(); if (!(selection !== null && selection !== void 0 && selection.rangeCount)) { return function () {}; } var active = document.activeElement; var ranges = []; for (var i = 0; i < selection.rangeCount; i++) { ranges.push(selection.getRangeAt(i)); } switch ((_active = active) === null || _active === void 0 || (_active = _active.tagName) === null || _active === void 0 ? void 0 : _active.toUpperCase()) { case 'INPUT': case 'TEXTAREA': active.blur(); break; default: // @ts-ignore 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(); }; }