diff options
author | Jack Moore <hello@jacklmoore.com> | 2015-11-11 02:39:37 -0500 |
---|---|---|
committer | Jack Moore <hello@jacklmoore.com> | 2015-11-11 02:39:37 -0500 |
commit | 97a0f84414f8ddafa06d80555fa021823f01fc51 (patch) | |
tree | 648576e4c8a67e719e91e0b113ad6633c962bb2b /src/autosize.js | |
parent | 2b9d32fe02d7814f36d4f404635760baae6bd14a (diff) | |
download | autosize-97a0f84414f8ddafa06d80555fa021823f01fc51.zip autosize-97a0f84414f8ddafa06d80555fa021823f01fc51.tar.gz autosize-97a0f84414f8ddafa06d80555fa021823f01fc51.tar.bz2 |
Fixed memory leak on destroy, fixes #270.3.0.14
Fixed bug in old versions of Firefox (1-5), fixes #246.
Diffstat (limited to 'src/autosize.js')
-rw-r--r-- | src/autosize.js | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/autosize.js b/src/autosize.js index 0904b8e..c02f4cf 100644 --- a/src/autosize.js +++ b/src/autosize.js @@ -124,11 +124,11 @@ function assign(ta, {setOverflowX = true, setOverflowY = true} = {}) { }; const destroy = style => { - window.removeEventListener('resize', pageResize); - ta.removeEventListener('input', update); - ta.removeEventListener('keyup', update); - ta.removeEventListener('autosize:destroy', destroy); - ta.removeEventListener('autosize:update', update); + window.removeEventListener('resize', pageResize, false); + ta.removeEventListener('input', update, false); + ta.removeEventListener('keyup', update, false); + ta.removeEventListener('autosize:destroy', destroy, false); + ta.removeEventListener('autosize:update', update, false); set.delete(ta); Object.keys(style).forEach(key => { @@ -142,18 +142,18 @@ function assign(ta, {setOverflowX = true, setOverflowY = true} = {}) { wordWrap: ta.style.wordWrap, }); - ta.addEventListener('autosize:destroy', destroy); + ta.addEventListener('autosize:destroy', destroy, false); // IE9 does not fire onpropertychange or oninput for deletions, // so binding to onkeyup to catch most of those events. // There is no way that I know of to detect something like 'cut' in IE9. if ('onpropertychange' in ta && 'oninput' in ta) { - ta.addEventListener('keyup', update); + ta.addEventListener('keyup', update, false); } - window.addEventListener('resize', pageResize); - ta.addEventListener('input', update); - ta.addEventListener('autosize:update', update); + window.addEventListener('resize', pageResize, false); + ta.addEventListener('input', update, false); + ta.addEventListener('autosize:update', update, false); set.add(ta); if (setOverflowX) { |