There are some differences between at.js and mbox.js. This section lists some of the differences and limitations, to help you be successful with at.js.
Insert Element and Rearrange options in the Visual Experience Composer should be avoided in single-page apps.
Because the DOM is not cleared on page load events in single-page apps like it is with traditional websites, the Insert Element and Rearrange manipulations might be reapplied multiple times depending on how the visitor navigates the SPA.
Some functions within mbox.js are not available in at.js. Internal mbox.js objects and methods (such as
mboxFactories, and others) are no longer supported by at.js (example:
mboxFactoryDefault). This is by design, intended to discourage you from “hacking” at.js to develop unsupported functionality that over the long term can cripple an implementation and make it impossible to upgrade. The only exposed methods are covered in the API pages of this documentation. Because of this:
Legacy, page-based integrations with other Adobe solutions might not work and should be upgraded to newer, server-side integrations.
Custom plugins developed for mbox.js might not work unless updated for at.js.
Make sure you include any plugins as part of your testing.
Because all mboxes are now asynchronous, they won’t block page rendering or return in the order in which they fired.
If you are using a global mbox in the Form-Based Experience Composer, be aware that HTML offers should contain only
During delivery, at.js filters out all the other HTML tags when applying global mbox offers. Global mbox offers are applied to HTML HEAD, which doesn’t allow DIV, SPAN, and so forth. For example
<div>test</div> cannot be applied because the
<div> tag can be used only inside HTML BODY.
Legacy page-based Target to Analytics integration will not work.
This integration requires that the Target call is made before the Analytics call.
You can no longer assume that the offer delivered by the first mbox is going to execute before the offer delivered by your second mbox.
DOM Manipulation and Redirect offers should be delivered through the auto-created global mbox in at.js and delivered in the
mboxCreate() function at the top of the
<body> will likely result in flicker of default content.