页面加载后resize页面布局

在我们写web的时候,有的时候页面加载完以后,布局位置有一些问题,手动改变窗口大小后则正常显示位置。

其实,我们手动改变窗口大小,是执行了resize方法。

share一下兼容方法:

coffee code :

compatibleEventCreate : ->
            if document.createEvent
              # W3C
              ev = document.createEvent('Event')
              ev.initEvent 'resize', true, true
              window.dispatchEvent ev
            else
              # IE
              element = document.documentElement
              event = document.createEventObject()
              element.fireEvent 'onresize', event

js code :

compatibleEventCreate: function() {
          var element, ev, event;
          if (document.createEvent) {
            ev = document.createEvent('Event');
            ev.initEvent('resize', true, true);
            return window.dispatchEvent(ev);
          } else {
            element = document.documentElement;
            event = document.createEventObject();
            return element.fireEvent('onresize', event);
          }
        }

调用:

setTimeout(function() {
              return scope.pushNotification.compatibleEventCreate();
            }, 0);

之所以使用setTimeout,时间为0,是将改方法加入消息队列,等其他事件执行完之后,最后执行该方法。

原文地址:https://www.cnblogs.com/rengised/p/5606251.html