ResizeObserverEntry

您正在阅读此内容的英文版本,因为该语系尚未翻译。 帮助我们翻译此文章吧!

这是一个实验中的功能
此功能某些浏览器尚在开发中,请参考浏览器兼容性表格以得到在不同浏览器中适合使用的前缀。由于该功能对应的标准文档可能被重新修订,所以在未来版本的浏览器中该功能的语法和行为可能随之改变。

ResizeObserverEntry 接口是传递给ResizeObserver() 构造器回调函数中的参数对象。

属性

ResizeObserverEntry.contentRect  只读
对改变尺寸大小的元素的 DOMRectReadOnly引用(包含x,y,width,height,top,right,bottom,left属性)。
ResizeObserverEntry.target  只读
当前改变尺寸大小的元素的 Element 引用
 

事件

方法

无.

示例

以下示例通过观察box的宽度变化从而改变其边框圆角半径。

const resizeOserver = new ResizeObserver(entries => {
  for (let entry of entries) {
    entry.target.style.borderRadius = Math.max(0, 250 - entry.contentRect.width) + 'px';
  }
});
resizeObserver.observe(document.querySelector('.box:nth-child(2)'));

规范

Specification Status Comment
Resize Observer
ResizeObserverEntry
Editor's Draft Initial definition.

浏览器兼容性

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
ResizeObserverEntryChrome Full support 64Edge No support NoFirefox Full support 69IE No support NoOpera Full support YesSafari No support NoWebView Android Full support 64Chrome Android Full support 64Firefox Android No support NoOpera Android Full support YesSafari iOS No support NoSamsung Internet Android Full support Yes
borderBoxSize
Experimental
Chrome No support NoEdge No support NoFirefox Full support 69IE No support NoOpera No support NoSafari No support NoWebView Android No support NoChrome Android No support NoFirefox Android No support NoOpera Android No support NoSafari iOS No support NoSamsung Internet Android No support No
contentBoxSize
Experimental
Chrome No support NoEdge No support NoFirefox Full support 69IE No support NoOpera No support NoSafari No support NoWebView Android No support NoChrome Android No support NoFirefox Android No support NoOpera Android No support NoSafari iOS No support NoSamsung Internet Android No support No
contentRectChrome Full support 64Edge No support NoFirefox Full support 69IE No support NoOpera Full support YesSafari No support NoWebView Android Full support 64Chrome Android Full support 64Firefox Android No support NoOpera Android Full support YesSafari iOS No support NoSamsung Internet Android Full support Yes
targetChrome Full support 64Edge No support NoFirefox Full support 69IE No support NoOpera Full support YesSafari No support NoWebView Android Full support 64Chrome Android Full support 64Firefox Android No support NoOpera Android Full support YesSafari iOS No support NoSamsung Internet Android Full support Yes

Legend

Full support  
Full support
No support  
No support
Experimental. Expect behavior to change in the future.
Experimental. Expect behavior to change in the future.