Cross-domain, cross-frame Javascript

Technology

Because of the cross domain security restrictions in most Javascript implementations, it’s normally impossible for one HTML document to communicate with another frame, popup, or iframe unless the two pages are served from the same domain. James Burke came up with a clever solution to this problem, allowing bidirectional communication between a parent window and it’s iframe or popup.

The trick is to use the fragment identifier, that portion of the url after the # which is normally used to identify a named anchor, to pass messages between the documents. Since the javascript in both documents can retreive the other window’s location, and since changing the location to a new anchor doesn’t involve a page refresh, the two windows can talk to eachother. It’s as simple as setting an interval on each end to poll the other window’s location for changes.

Cross Frame Communication with Fragment Identifiers – Link and an Example

6 thoughts on “Cross-domain, cross-frame Javascript

  1. works says:

    this works! I would kiss you if you weren’t infected with parasites.

  2. Gary says:

    Works as long as you don’t care about the back button.

    The back button no longer works as expected.. each time you change the hash “#” value to send messages, an entry is made to the browsers history. Hitting the back button sends the page back thru these messages, confusing the user.
    Similar issue with the forwards button.

  3. Gary says:

    Works as long as you don’t care about the back button.

    The back button no longer works as expected.. each time you change the hash “#” value to send messages, an entry is made to the browsers history. Hitting the back button sends the page back thru these messages, confusing the user.
    Similar issue with the forwards button.

Comments are closed.

Discuss this article with the rest of the community on our Discord server!
Tagged

ADVERTISEMENT

Maker Faire Bay Area 2023 - Mare Island, CA

Escape to an island of imagination + innovation as Maker Faire Bay Area returns for its 15th iteration!

Buy Tickets today! SAVE 15% and lock-in your preferred date(s).

FEEDBACK