UNPKG

1.2 kBJavaScriptView Raw
1import $ from './jquery';
2import globalize from './internal/globalize';
3
4function onTextResize (f) {
5 if (typeof f === 'function') {
6 if (onTextResize['on-text-resize']) {
7 onTextResize['on-text-resize'].push(function (emsize) {
8 f(emsize);
9 });
10 } else {
11 var em = $('<div></div>');
12
13 em.css({
14 width: '1em',
15 height: '1em',
16 position: 'absolute',
17 top: '-9999em',
18 left: '-9999em'
19 });
20
21 $('body').append(em);
22 em.size = em.width();
23
24 setInterval(function () {
25 if (em.size !== em.width()) {
26 em.size = em.width();
27
28 for (var i = 0, ii = onTextResize['on-text-resize'].length; i < ii; i++) {
29 onTextResize['on-text-resize'][i](em.size);
30 }
31 }
32 }, 0);
33 onTextResize.em = em;
34 onTextResize['on-text-resize'] = [function (emsize) {
35 f(emsize);
36 }];
37 }
38 }
39}
40
41globalize('onTextResize', onTextResize);
42
43export default onTextResize;