Skip to content

Releases: davidjbradshaw/iframe-resizer

5.0.0

19 May 19:10
Compare
Choose a tag to compare

New documentation site

Upgrade

For the most part version 5 will be a drop in replacement. The following guide explains how the API has been simplified in the new version.

New features

  • Added automatic selection of best page size calculation method
  • Added check for html elements overflowing document body with console warning to advise on how to optimise the performance of page size calculation in this this situation
  • Added getParentProperties() function that returns the following information from the parent page:
    • iFrame boundingClientRect details
    • Position and size of scrollable page area
    • Inner size of the bowser window
  • Added offsetHeight & offsetWidth options to adjust values returned from iframe
  • Added direction option
  • Added postMessageTarget option to better support GAS iframes
  • Log element used to calculate lowest/rightmost/tagged element
  • Added visibility checks to disable resizing when either the page or the iframe is hidden
  • Added direct message passing for same domain iframes, this gives much improved performance over postMessage()
  • Added CSS animation to examples
  • Added width resizing to the examples
  • Added WordPress guide to docs

Changes

  • Changed default height calculation method to auto
  • Improved performance optimisation of element based page size calculation methods
  • Replaced user interaction and browser event detection with the newish ResizeObserver API, by adding it to all non-static page elements. This provides improved detection of CSS :hover, CSS Animation, <textarea/> user resizing events and remove the need for user interaction event listeners.
  • Deprecated heightCalculationMethod/widthCalculationMethod in favour of auto calculation mode detection
  • Deprecated data-iframe-height / date-iframe-width for data-iframe-size
  • Deprecated sizeHeight and sizeWidth in favour of new direction option
  • Deprecated getPageInfo() in favour of getParentProperties() which returns more reliable and useful data
  • Renamed onInit() -> onReady() , and added deprecation warning
  • Renamed size() -> resize() in iframe, and added deprecation warning
  • Split out jQuery support into it's own packages @iframe-resizer/jquery
  • Changed MutationObserver to now just look for added nodes in the document tree and ensure that new non-static elements are covered by ResizeObserver
  • Enhanced warning messages
  • Removed minHeight, maxHeight, minWidth and maxHeight options, as modern CSS can now deal with this for us.
  • Removed log messages from production build (reduces file sizes by 20%)
  • Removed deprecated v3 methods. Calls to v3 methods will now fail, rather than be a warning
  • Removed mouse, touch and resize event listeners, as not required alongside ResizeObserver
  • Removed jQuery from examples
  • Removed legacy browser support, base support is now ecmaScript2020
  • Removed interval fallback, as no longer support browsers that require it
  • Removed Firefox invisible iframe fix, as no longer required

Fixes

  • Updated lowestElement to exclude non-visible elements (head, meta, base, title, script, link, style, map, area, option, optgroup, template, track, wbr, nobr) and then check remaining elements using element.checkVisibility()
  • Use Math.ceil() to round up sub-pixel heights (Use offset: 1 option)
  • Fixed possible memory leak in addImageListeners
  • Deconflict AMD and CommonJS
  • Created React Example (onMessage)
  • Fixed getPageInfo() to update when the size of the iframe changes
  • Fix disabling getPageInfo() updates after leaving page in iframe that requested them
  • Fixed forcing html/body height to auto !important, incorrectly setting these values is the number one cause of problems effecting the page resizing
  • Fixed issue with height / width being returned as strings, rather than numbers by some Parent Page API methods.

Chore

  • Migrate build to Rollup
  • Migrate integration test to Chrome Headless
  • Split into multiple packages
  • Refactored code to more modern JavaScript (ongoing)
  • Migrate unit tests to Jest (ongoing)
  • Create publish script
  • Updated dependancies

v5.0.0-rc.3

17 May 16:40
Compare
Choose a tag to compare
v5.0.0-rc.3 Pre-release
Pre-release
Release 5.0.0-RC.3

v4.3.6

08 Mar 11:53
Compare
Choose a tag to compare
4.3.6

v4.3.5

01 Mar 22:25
Compare
Choose a tag to compare
Version 4.3.5

v4.3.4

01 Mar 22:25
Compare
Choose a tag to compare
Version 4.3.4

v4.3.3

17 Feb 15:15
Compare
Choose a tag to compare
Version 4.3.3

v4.3.2

30 Nov 23:54
Compare
Choose a tag to compare
Version 4.3.2

v4.2.9

16 Jan 08:57
Compare
Choose a tag to compare
Version 4.2.9

v4.2.6

10 Nov 14:33
Compare
Choose a tag to compare
Version 4.2.6

v4.2.4

09 Nov 18:56
Compare
Choose a tag to compare
Version 4.2.4