In most scenarios, MetaLocator will create an IFRAME within your page in which it will render the Interface.  The height of the IFRAME is dictated by a few different settings as described in this article.

When Style & Color Settings > Auto-size IFRAME is set to "Yes", the system will try to automatically size the IFRAME according to the method chosen under Style & Color Settings > Auto-size IFRAME Method.  The method should be left at it's default value unless bodyOffset does not produce the desired results.

The Method value can be one of the following:

  • bodyScroll uses document.body.scrollHeight *
  • documentElementOffset uses document.documentElement.offsetHeight
  • documentElementScroll uses document.documentElement.scrollHeight *
  • max takes the largest value of the main four options *
  • min takes the smallest value of the main four options *
  • grow same as max but disables the double resize that is used to workout if the iFrame needs to shrink. This provides much better performance if your iFrame will only ever increase in size
  • lowestElement Loops though every element in the the DOM and finds the lowest bottom point †
  • taggedElement Finds the bottom of the lowest element with a data-iframe-height attribute

When Style & Color Settings > Auto-size IFRAME is set to "No", the system uses the Frame Added Height setting plus the height of the Layout Settings > "Map Height" setting to create the IFRAME.  If a map is not displayed, the system uses the Layout Settings > "Directory Height" setting plus the Framed Added Height.

When changing these values, be sure to save the interface to clear the server-side cache, then delete your browser cache to ensure the latest settings are shown on your Web site.

Certain methods can have undesired side-effects.  For example, some configurations can cause the system to determine the IFRAME height to be zero, causing the interface to disappear entirely.  If your interface disappears in an odd manner (e.g. after a few moments, or only after a search), the Auto-size IFRAME method is likely the culprit.

Did this answer your question?