You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

30 line
724 B

  1. class GlobalMessage {
  2. constructor(wrapper) {
  3. this.wrapper = wrapper;
  4. this.inner = wrapper.querySelector('.inner');
  5. this.closeButton = wrapper.querySelector('.close');
  6. window.setTimeout(() => {
  7. this.setHeight();
  8. window.setTimeout(() => {
  9. wrapper.classList.add('open');
  10. wrapper.removeAttribute('style');
  11. }, 300);
  12. }, 1000);
  13. this.closeButton.addEventListener('click', () => {
  14. this.setHeight();
  15. wrapper.classList.remove('open');
  16. window.requestAnimationFrame(() => {
  17. wrapper.removeAttribute('style');
  18. })
  19. })
  20. }
  21. setHeight() {
  22. this.wrapper.style.maxHeight = this.inner.scrollHeight + 'px';
  23. }
  24. }
  25. export default GlobalMessage;