at.js Version Details

Details about changes in each version of at.js.

Important: The Target team maintains only two versions of at.js—the current version and the second-latest version. Please upgrade at.js as necessary to ensure that you are running a supported version.

at.js Version 1.2.3

at.js version 1.2.3 is now available.

at.js Version 1.2.2

at.js version 1.2.2 is now available.

  • Fixed an issue that returned a JavaScript error when the Target library loaded on a page using QUIRKS mode. (TNT-28312)

  • Fixed an issue that caused Target click tracking to break Analytics data collection calls. (TNT-28261)

  • Fixed an issue that caused getOffer() params to fail when targetPageParams() returns an empty string. (TNT-28359)

  • Fixed an issue with session ID generation when using x-only. (TNT-28361)

at.js Version 1.2.1

at.js version 1.2.1 is now available.

  • Fixed an issue when click tracking on a link with target="_blank" prevented Target from opening the link in a new tab.

at.js Version 1.2.0

at.js version 1.2 is now available as a maintenance release that contains mostly bug fixes.

  • Fixed an issue that prevented default actions for click-tracking special cases. (TNT-28089)

  • Fixed an issue when click-tracking on a link with target="_blank" that prevented Target from opening the link in a new tab. (TNT-28072)

  • IP addresses can be used as the cookie domain. (TNT-28002)

  • Fixed an issue that caused flicker in redirect offers with a global mbox or other regional mboxes. (TNT-27978)

  • Fixed an issue in Experience Targeting activity setup failing within the VEC when switching between Browse and Compose. (TNT-27942)

  • Fixed incorrect handling on flicker style classes for click-track elements. (TNT-27896)

  • Fixed an issue that caused global mbox parameters to become mixed up with all mbox parameters. (TNT-27846)

  • Made changes to ensure that Handlebars, Mustache, and other client-side templating libraries are properly handled by at.js. (TNT-27831)

  • Made changes to ensure that sdidParamExpiry is properly initialized and passed to the Visitor API. This is a regression that has been added to at.js 1.1.0. Previous at.js versions are not affected. This affects only clients using redirect offers and A4T. (TNT-27791)

  • Made changes to ensure that SCRIPT is executed regardless of the type attribute being used. (TNT-27865)

at.js Version 1.1.0

Date: August 2, 2017

The following enhancements and fixes are included in at.js version 1.1:

  • Added response token handling. For more information, see Response Tokens.

  • Resolved issue so that document.currentScript polyfill doesn't interfere with Angular 1.X.

  • Made changes to ensure that click tracking doesn't interfere with visibility property. Click tracking elements are marked with the at-element-click-tracking CSS class instead of at-element-marker.

at.js Version 1.0.0

Date: July 7, 2017

The following enhancements and fixes are included at.js version 1.0:

  • Support for loading at.js asynchronously for faster page loads.

  • Support for pre-hiding page content when loading at.js asynchronously.

  • Better error messaging when content delivery is disabled.

  • Performance improvements when delivering multiple activities.

  • Support for YUI Compressor.

  • Bug/error reporting for custom events during activity delivery.

  • Fix for performance issues in Microsoft Internet Explorer 11.

  • Fix for getOffer() function giving an error on some websites.

  • Load the Target library asynchronously. For more information, see at.js Frequently Asked Questions.

at.js Version 0.9.7

Date: May 22, 2017

The following enhancements and fixes are included in at.js version 0.9.7:

  • Fixed an issue related to an asset key that was missing from insertAfter and insertBefore actions in the Visual Experience Composer (VEC). These issues were related to the migration from visual offers to offer templates.

at.js Version 0.9.6

Date: April 13, 2017

The following enhancements and fixes are included in at.js version 0.9.6:

  • Redirect offer support for A4T. After you download and install at.js version 0.9.6, you can use redirect offers in activities that use Adobe Analytics as the Reporting Source for Target (A4T). Besides at.js version 0.9.6, there are other minimum requirements your implementation must meet in order to use redirect offers and A4T. For more information and additional important information you should know, see Redirect Offers - A4T FAQ.

  • Prior to at.js 0.9.6, when the Visitor API was present on the page and the visitorApiTimeout setting was too aggressive, Target could run into a situation when no MCID data was sent in the Target request. This could lead to issues like unstitched hits in Analytics when using A4T.

    This behavior has been changed in at.js 0.9.6, even if the visitorApiTimeout is set to say 1 ms, Target will try to collect SDID, tracking servers, and customer IDs data and send those in the Target request.

  • Added the selectorsPollingTimeout setting. For more information, see targetGlobalSettings().

  • The format of the response from getOffer() has been changed. For more information, see

  • Console logging has been added for unsupported <!DOCTYPE> declarations.

  • Fixed an issue where Target Classic plugins weren’t being applied correctly when multiple default offers were delivered to a single mbox. (TGT-22664) For more information, see Plug-Ins in the Adobe Target Classic documentation.

  • Improved cookie-setting for two letter top-level-domains (TLDs) to ensure that the mbox cookie is set correctly for these domains (for example,,, and so forth).

  • The algorithm for extracting the top-level domain that should be used when saving cookies has changed in at.js version 0.9.6. Because of this change, cookies cannot be saved to addresses that use IP. Most of the time, IP addresses are used for testing purposes, but as workarounds you can use DNS entries or adjust the hosts file on a local box.

  • Fixed move and rearrange actions handling when properties are string values instead of integers.

at.js Version 0.9.4

Date: January 19, 2017

  • mbox names can now contain special characters, including ampersands ( & ), to be consistent with naming requirements for mbox names using mbox.js.

    For a list of allowable special characters, see Configure at.js.

  • Added secureOnly setting that indicates whether at.js should use HTTPS only or be allowed to switch between HTTP and HTTPS based on the page protocol. This is an advanced setting that defaults to False and can be overridden via targetGlobalSettings.

  • The Legacy Browser Support option is available in at.js version 0.9.3 and earlier. This option was removed in at.js version 0.9.4.

at.js Version 0.9.3

Date: October 10, 2016

  • Ensures mbox calls fire in Microsoft Internet Explorer 11 when legacy browsers are disabled in the at.js settings.

  • Ensures that default content is rendered if a dynamic remote offer fails (for example, if the URL is incorrect and returns a 404 error).

  • Ensures that elements are revealed quickly when VEC click-tracking selectors can't be found in the DOM.

at.js Version 0.9.2

Date: September 21, 2016

  • Added an optoutEnabled setting to enable or disable the Device Graph opt-out. If this setting is set to true and the visitor has opted out of tracking, the visitor's browser will not make any mbox calls. Device Graph is currently in Beta. This setting is set to false by default, but must be set to true if you are using Device Graph. A similar option is part of mbox.js v61.

  • Added CustomEvent support for the notification mechanism. Previously, the at.js event notification mechanism could not be used via standard DOM APIs, such as document.addEventListener(). Now you can use document.addEventListener() to subscribe to at.js events, such as request events and content rendering events.

  • Fixed an issue related to offers created in the Visual Experience Composer (VEC). Prior to this release, Target hid the selectors and un-hid them only when all selectors matched. In at.js 0.9.2 Target un-hides the selectors as soon as they are matched.

at.js Version 0.9.1

Date: July 14, 2016

  • Provides at.js a timeout for the Visitor Id Service, which is independent of the service’s own timeout.

  • Corrects an issue in 0.9.0 that impacted implementations using at.js on some pages and mbox.js on other pages.

  • If you use Adobe Analytics as your activity's reporting source, you do not need to specify a tracking server during activity creation if you are using mbox.js version 61 (or later) or at.js version 0.9.1 (or later). The mbox.js or at.js library automatically sends tracking server values to Target. During activity creation, you can leave the Tracking Server field empty on the Goals & Settings page.

at.js Version 0.9.0

Target Release: 16.6.1

Date: June 23, 2016
  • Fixes a whitescreen issue when using VEC offers. Anyone using at.js should upgrade to this new version.

  • New registerExtension API.

    This new API gives developers access to certain jQuery modules used in at.js to develop extensions (aka plugins) for the library. There are a few implications for this change. This impact only those users who are using these features:

    • getSettings() API has been removed, but the same functionality is available using registerExtension().

    • getTracking() API has been removed, but the same functionality is available using registerExtension().
    • Existing extensions (e.g. AngularJS extensions) must be updated to use the registerExtension() approach.

  • New at.js notification API.

    The goal of this notification system is to provide more insight into what at.js is doing on the page and when there are issues. A common issue seen with the VEC is that an IT release changes the page, a VEC selector breaks, and the test stops delivering content correctly. A goal of this notification system is to make this delivery issue known to the page, so developers can access this information, pass it to a system like Adobe Analytics, and alerts can be sent to the business owners that their test broke.

  • New targetGlobalSettings() API method.

    You can override settings in the at.js library, rather than configuring the settings in the Target Standard/Premium UI or by using REST APIs.

at.js Version 0.8.0

Date: May 5, 2016.

This is the first official release of the at.js library.

at.js is a new implementation library for Target designed for both typical web implementations and single-page applications.

at.js replaces mbox.js for Adobe Target implementations.

Note: Although at.js replaces mbox.js, mbox.js will continue to be supported. For most people, at.js provides advantages over mbox.js. This gives you time to test at.js and to change the implementation on your pages.

Among other benefits, at.js improves page load times for web implementations, improves security, and provides better implementation options for single-page applications.

at.js contains the components that were included in target.js, so there is no longer a call to target.js.

When implementing at.js, be aware of the following:

  • Internet Explorer versions earlier than 8 are not supported.
  • Asynchronous implementation means legacy integrations like the Test&Target to SiteCatalyst plugin may not work.
  • Target plugins that reference mbox.js objects and methods are not supported.
  • All calls to Target are made via XMLHTTPRequest and content is returned via JSON.