Javascript 观察浏览器窗口

Javascript 观察浏览器窗口,javascript,typescript,rxjs,observable,Javascript,Typescript,Rxjs,Observable,有没有一种方法可以用一个可观察的窗口来观察浏览器窗口?例如rxJS或类似的东西。每次重新缩放浏览器窗口时,我都要触发一个操作 有一个新的原语叫做ResizeObserver。它对任何观察到的元素的大小变化作出反应,而与引起变化的原因无关 此代码段来自Google Dev博客: var ro = new ResizeObserver( entries => { for (let entry of entries) { const cr = entry.contentRect;

有没有一种方法可以用一个可观察的窗口来观察浏览器窗口?例如rxJS或类似的东西。每次重新缩放浏览器窗口时,我都要触发一个操作

有一个新的原语叫做
ResizeObserver
。它对任何观察到的元素的大小变化作出反应,而与引起变化的原因无关

此代码段来自Google Dev博客:

var ro = new ResizeObserver( entries => {
  for (let entry of entries) {
    const cr = entry.contentRect;
    console.log('Element:', entry.target);
    console.log(`Element size: ${cr.width}px x ${cr.height}px`);
    console.log(`Element padding: ${cr.top}px ; ${cr.left}px`);
  }
});

// Observe one or multiple elements
ro.observe(someElement);

不幸的是,
ResizeObserver
位于Chrome55金丝雀中,位于实验性Web平台标志后面。您基本上需要一个多边形填充:

如果我正确理解了您的意思,您需要观察
窗口的调整大小事件。
RxJS非常简单:

Rx.Observable
  .fromEvent(window, 'resize')
  .subscribe(event => {
    // output new window width and height
    console.log(window.innerWidth, window.innerHeight)
    // or
    console.log(event.target.innerWidth, event.target.innerHeight)
  })