Future roadmap
Author: davidjbradshawCreated May 19, 2024Updated Apr 30, 2026
Labelsenhancement
V5.0
v5.1
- Copy Title element value to iframe title attribute
- Add
scrollBy()method - Add
waitForLoadoption - Add Parent option to create
data-iframe-sizeattrs via CSS selector (sizeSelector) - Log when new element is used to calculate size
v5.2
- Investigate if IntersectionObserver can be used to detect which elements are outside the
<body/> - set
window.location.hashwhen settinginPageLinks - Alias
offsetSize->offset - Investigate scrolling with sticky headers
- #794
v5.3
- Optimise performance
- Log init/resize calculation timer
- Remove
warningcomponent dependancy in React version - Isolate parent/child when messages passed via same-domain iframe
- Use
setTimeout(0)on user events with void return type - Check HTMLIFrameElement: sandbox allows JavaScript, when no response from iframe
v5.4
- Use auto-console-group for log output
-
ingnoreSelector&data-iframe-ignore -
setOffsetSize() -
log: 'collapsed’option -
onBeforeResize(newSize)
v5.5
- Direction
both - Add support for
loading=“lazy” - Detect when iframe is hidden on parent page
- Detect and warn about reused IDs on parent iframe tags
- Detect cross-origin errors and provide a better warning message
- Alias
onBeforeClose->onClose - Alias
onAfterClose->onClosed
v6.0.0
Native TypeScript
- Migrate to TypeScript
- Restructure into modular code base
- Remove NameSpace from parent types
- Convert API consts to Union Types
New Features
- Detect changes to child
<title/>and update parent - Skip initial
postMessagefor local iframes. - Always use auto calculation method with V4 and before parent pages
- Add support for multiple target origins (parent)
- #707
- Add support for multiple target origins (child)
- Add numeric shorthand for log option (0=disabled, 1=collapsed, 2=expanded)
- Add
getVersion() : { parent, child }- #1551
- Update onBeforeResize(newSize, event, direction)
- #1591
Platforms
- Add support for React.forwardRef()
- Distribute Angular version on NPM, instead of source code
- Drop support for Vue 2
Tests
- Unit tests expanded to 99% coverage
- Expanded integration tests
- Added e2e tests
Fixes
- Fix overflowObserver check in Safari 16 and below.
- #1668
- Intermittent race conditions in Jasmine integration tests — added delays/guards to prevent flaky test failures
-
targetOrigin
Type Deprecations
-
waitForLoad- no longer required in modern browsers -
React.getElement()- non-standard API
Chore
- Migrate from Rollup to Vite
- Migrate from Jest to ViTest
- Remove v5 deprecated methods
- Remove legacy package
- Remove
iFrameResizerreferences, useiframeResizerinstead - Enforce license with V4 parent
v6.1
- Add
addEventListener/removeEventListener- #710
- Add option to inject child script into new same origin child pages
New warnings
- Detect and warn about resize loops
- Detect and warn when an iframe is removed from the page before being disconnected
- Detect and warn about elements anchored to the page bottom/right of the page
Framework components / plugins
- React
- Vue 3
- Alpine
- Astro
- Svelte
- SolidJS
- Angular
- jQuery
- Web Components
Source: davidjbradshaw/iframe-resizer