easyXDM is a Javascript library that enables you as a developer to easily work around the limitation set in place by the Same Origin Policy, in turn making it easy to communicate and expose Javascript API’s across domain boundaries.

easyXDM provides a transport stack capable of passing string based messages between two windows, a consumer (the main document) and a provider (a document included using an iframe). It does this by using one of several available techniques, always selecting the most efficient one for the current browser. The transport stack offers bi-directionality, reliability, queueing and sender-verification.

easyXDM uses JavaScript only (no Flash, Silverlight, extra html files etc). The library provides the following browsers with stacks with latency of less than 15ms:

  • IE6 and IE7 – using the NixTransport FlashTransport (Microsoft Security Bulletin MS11-018)
  • IE8+ – using the PostMessageTransport
  • Opera 9+ – using the PostMessageTransport (support for both Operas old standard and the HTML5 standard)
  • Firefox 1-2 – using the FrameElementTransport
  • Firefox 3+ – using the PostMessageTransport
  • Safari 4+ – using the PostMessageTransport
  • Chrome 2+ – using the PostMessageTransport