Adobe Target at. js JavaScript ライブラリの各バージョンの変更点についての詳細です。
ターゲットチームは、at.js 1の両方をサポートしています。x と at.js 2.x 間のマッピングについて説明します。サポートされているバージョンを実行していることを確認するには、at.jsのメジャーバージョンのいずれかを最新のアップデートにアップグレードしてください。
at.jsをアップグレードする場合は、Adobe Experience Platform ランチが推奨される方法です。拡張機能開発者は、継続的に拡張機能に新機能を追加し、頻繁にバグを修正します。 これらのアップデートは新しいバージョンの拡張機能にパッケージ化され、アップグレード時にLaunchカタログで利用できるようになります。 詳しくは、『Experience Platform Launchユーザーガイド』の拡張機能のアップグレードを参照してください。
at.jsのこのリリースはメンテナンスリリースであり、次の修正が含まれています。
at.jsのこのリリースはメンテナンスリリースであり、次の修正が含まれています。
at.jsのこのリリースはメンテナンスリリースであり、次の修正が含まれています。
at.jsのこのリリースはメンテナンスリリースであり、次の修正が含まれています。
at.js のこのリリースはメンテナンスリリースで、次の機能強化および修正が含まれています。
deviceIdLifetime
設定をオーバーライド可能にしました。 (TNT-36349)sendBeacon
呼び出しを遅らせた問題を修正しました。 (TNT-36407、TNT-35990、TNT-36000)at.js のこのリリースはメンテナンスリリースで、次の機能強化および修正が含まれています。
targetGlobalSettings.cspScriptNonce
とtargetGlobalSettings.cspStyleNonce
を設定できます。 詳しくは、targetGlobalSettingsを参照してください。check
からat_check
に変更しました。at.js のこのリリースはメンテナンスリリースで、次の機能強化および修正が含まれています。
check
からat_check
に変更しました。at.jsのこのリリースには、次の機能強化および修正が含まれています。
Adobe Analyticsコードがページエレメントに存在しない場合に、クリック追跡でターゲット用のAnalytics(A4T)のコンバージョンがレポートされない問題が修正されました。
WebページでExperience CloudIDサービス(ECID)v4.4とat.js 2.2の両方を使用する場合のパフォーマンスが向上しました。
以前は、ECIDは、at.jsがエクスペリエンスを取得する前に、2回のブロック呼び出しを行っていました。 これは1回の呼び出しに短縮され、パフォーマンスが大幅に向上しました。
このパフォーマンス強化を利用するには、ECID Launch Extensionをv4.4にアップグレードしてください。
at.jsバージョン2.2では、serverState
という新しい設定も提供されています。 この設定は、ターゲットのハイブリッド統合が実装されている場合に、ページのパフォーマンスを最適化するために使用できます。 ハイブリッド統合とは、クライアント側でat.js v2.2以降と、配信APIまたはサーバー側でターゲットSDKの両方を使用してエクスペリエンスを提供することです。 serverState
では、at.js v2.2以降で、サーバー側でフェッチしたコンテンツからエクスペリエンスを直接適用し、提供されるページの一部としてクライアントに返す機能が提供されます。詳しくは、targetGlobalSettingsの「serverState」を参照してください。
at.jsのこのリリースには、次の機能強化および修正が含まれています。
このパフォーマンス強化を利用するには、ECID Launch Extensionをv4.4にアップグレードしてください。
at.js のこのリリースはメンテナンスリリースで、次の機能強化および修正が含まれています。
(括弧内の問題番号はアドビ社内で使用されます。)
triggerView()
が 2 回以上オファーをレンダリングしない問題を修正しました。(TNT-32780)triggerView()
の問題を修正しました。(TNT-32776)triggerView()
通知が送付されない問題を修正しました。(TNT-32614)Navigator.sendBeacon()
API を使用して送信された配信要求のコンテキストで、ビーコンフラグが「true」に設定されるようになりました。(TNT-32683)targetPageParams
関数を使用して mboxThirdPartyId
を渡す際に、要求ペイロードがクエリパラメーターか要求ペイロードのいずれかに存在しなかった問題を修正しました。(TNT-32613)このリリースには、次の機能および機能強化が含まれています。
Adobe Opt-In サポート:Adobe Opt-In は、アドビソリューションと同意管理プラットフォームの統合を簡略化する方法です。Adobe Opt-in について詳しくは、プライバシーと一般データ保護規則(GDPR)を参照してください。
業界標準の CSP 準拠:at.js は、eval() を使用して JavaScript を実行しなくなりました。
クライアント側分析ログ:お客様は、クライアント側とサーバー側とを問わず、分析データの Adobe Analytics への送信方法を完全に制御できます。
詳しくは、実装する前にのクライアント側分析ログを参照してください。
通知の送信:applyOffer()
または applyOffers()
を使用する代わりにコードでエクスペリエンスがレンダリングされる場合、開発者は通知を送信できます。
詳しくは、adobe.target.sendNotifications(options) を参照してください。
at.js のサイズが最大 24%減少:at.js のサイズが最大 24%小さくなります。ファイルサイズが小さくなることで、ページ読み込みパフォーマンスが向上し、ページへの at.js ダウンロード時間が短縮します。
これはメンテナンスリリースで、次の機能強化および修正が含まれています。
(括弧内の問題番号は Adobe 内部で使用されます。)
これはメンテナンスリリースで、次の修正が含まれています。
(括弧内の問題番号は Adobe 内部で使用されます。)
at.js 2.x は、次世代のクライアントサイドテクノロジーでパーソナライゼーションを実行するための機能セットを提供します。この新しいバージョンは、シングルページアプリケーション(SPA)と調和したインタラクションを実現するための at.js のアップグレードに焦点を当てています。
以前のバージョンでは利用できない、at.js 2.x を使用するメリットを紹介します。
at.js 2.x では、次の新しい関数が導入されています。
at.js 2 x の導入に伴い、次の関数が廃止されました。
詳しくは、「at.js 1.x から at.js 2 へのアップグレード」と「at.js 関数」を参照してください。
一般データ保護規則(GDPR)のために Adobe Opt-in サポートが必要な場合、現在 at.js 1.7.0 または at.js 2.1.0 を使用している必要があります。
at.js 1.7.0 では、Adobe Opt-in サポートが導入されています。Adobe Opt-In は、アドビソリューションと同意管理プラットフォームの統合を簡略化する方法です。
Adobe Opt-in に関する詳細については、「プライバシーと一般データ保護規則(GDPR)」を参照してください。
また、このリリースでは、リダイレクト URL から取得されたパラメーターを使用して Target がリダイレクト URL パラメーターを上書きする場合がある問題も修正されました。
GDPR のために Adobe Opt-in サポートが必要な場合、現在 at.js 1.7.0 または at.js 2.1.0 を使用している必要があります。
すべてのバージョンのリストについては、at.js バージョンの詳細を参照してください。
at.js 1.6.4 は メンテナンスリリースで、次の問題に対応しています。
at.js バージョン 1.6.3 には、次の修正および機能強化が含まれています。
これはメンテナンスリリースで、次の問題に対処しています。
また、at.js バージョン 1.6.2 には at.js バージョン 1.6.1 および 1.6.0 に含まれている機能強化と修正がすべて含まれています。これらのバージョンは既にダウンロードできなくなっています。1.6.1 または 1.6.0 を使用している場合は、バージョン 1.6.2 にアップグレードすることをお勧めします。
at.js バージョン 1.6.1 に含まれている機能強化と修正を以下に示します。
at.js バージョン 1.6.0 に含まれている機能強化と修正を以下に示します。
at.js バージョン 1.5.0 がリリースされました。
at-request-succeeded
イベントの詳細には、リダイレクトフラグが含まれています。このフラグを使用すると、ページが別の URL にリダイレクトされるかどうかを判断することができます。その URL を知る必要がある場合は、subscribe to at-content-rendering-redirect
をサブスクライブします。(TNT-29834)
window.targetGlobalSettings.enabled
を false に設定すると失敗して実行時例外が発生する原因となっていた問題を修正しました。(TNT-29829)
グローバル mbox リクエストを発行したり本文を非表示にしたりすると、Visual Experience Composer(VEC)への読み込み中にページが失敗する原因となっていた問題を修正しました。(TNT-29795)
screenOrientation
、devicePixelRatio
、および webGLRenderer
のサポートを追加しました。これらの新しい Target リクエストパラメーターは、iPhone X やその他の最新型デバイスの検出に使用されます。詳しくは、モバイルを参照してください。(TNT-29781)
Adobe Audience Manager(AAM)のロケーションヒントが送信されないことがある問題を修正しました。(TNT-29695)
これをサポートしているブラウザーの場合、at.js 1.5.0 はセレクターポーリングの際に MutationObserver に切り替わります。at.js 1.0.0 以前のバージョンでは、MutationObserver ポリフィルを使用していましたが、これは問題があることがわかっていました。ポリフィルの問題を回避するために、バージョン 1.5.0 では次の擬似コードを使用して、どのスケジューリングメカニズムを使用するかを決定しています。
if MutationObserver is supported
scheduler = MutationObserver
else if document is visible
scheduler = requestAnimationFrame
else
scheduler = setTimeout
at.js バージョン 1.3.0 がリリースされました。
at.js とのインタラクションの追跡、デバッグ、カスタマイズに役立つ次の新しいイベントを利用できます。
詳細については、「at.js カスタムイベント」を参照してください。
データプロバイダーから取得した追加パラメーターを利用して at.js リクエストを拡張できます。データプロバイダーは、dataProviders key
の window.targetGlobalSettings
に追加する必要があります。
詳細については、「データプロバイダー」を参照してください。
at.js リクエストで GET が使用されるようになりましたが、URL が 2,048 文字を超える場合は POST に切り替わります。urlSizeLimit
という名前の新しいプロパティを利用して、この文字数の上限を引き上げることができます。この変更により Target は、at.js と、同一の技術を使用する AppMeasurement を連携させることができるようになります。
Target では、adobe.target.applyOffer(options)
関数で mbox
キーが強制されるようになりました。これまでもこのキーは必須でしたが、Target では、適切な検証がおこなわれ、お客様がこの関数を正しく利用するために、使用が強制されるようになりました。
at.js のイベントとクリック追跡機能が強化されました。at.js では、navigator.sendBeacon()
を使用してイベント追跡データを送信し、navigator.sendBeacon()
がサポートされていない場合は同期 XHR にフォールバックします。このフォールバックが影響するのは、主に Internet Explorer 10 および 11 と、Safari の一部のバージョンです。Safari では、今後の iOS 11.3 のリリースで navigator.sendBeacon()
のサポートが追加されます。
at.js で、バックグラウンドタブでページが開かれている場合でもオファーをレンダリングできるようになりました。Target の一部のお客様では、バックグラウンドのタブに対するブラウザーの調整動作が原因で、requestAnimationFrame()
が無効になっている場合に問題が発生していました。
このリリースで、Chrome の CPU プロファイルを検査する際のコールスタックの短縮など、パフォーマンスの改良が多数加えられています。
at.js 1.3.0 では、Microsoft Internet Explorer 9 でのコンテンツ配信がサポート対象外になりました。サポートされているブラウザーの一覧については、サポートされているブラウザーを参照してください。今後、すべてのリクエストは、JSONP リクエストを使用せず、CORS に対応した XMLHttpRequest
を介して実行されます。この変更によってセキュリティが大幅に高まります。
at.js バージョン 1.2.3 がリリースされました。
at.js バージョン 1.2.2 がリリースされました。
targetPageParams()
が空の文字列を返した場合に getOffer() params
が失敗する問題を修正しました。(TNT-28359)at.js バージョン 1.2.1 がリリースされました。
at.js バージョン 1.2 が、大部分のバグ修正を含むメンテナンスリリースとして公開されました。
target="_blank"
を含むリンクでのクリック追跡時に、Target からリンクを新しいタブで開けない問題を修正しました。(TNT-28072)sdidParamExpiry
が適切に初期化され、訪問者 API に渡されるよう変更しました。これは、at.js 1.1.0
に追加された回帰です。それより前のバージョンの at.js には影響はありません。リダイレクトオファーと A4T を使用するクライアントのみに影響します。(TNT-27791)SCRIPT
が実行されるよう変更しました。(TNT-27865)日付: 2017 年 8 月 3 日
at.js バージョン 1.1 には、次の機能強化および修正が含まれています。
document.currentScript polyfill
が Angular 1.X に干渉しないようにしました。at-element-click-tracking
ではなく at-element-marker
の CSS クラスに分類されます。日付: 2017 年 7 月 8 日
at.js バージョン 1.0 には、次の機能強化および修正が含まれています。
getOffer()
関数によりエラーが発生する問題を修正。日付: 2017 年 5 月 23 日
at.js バージョン 0.9.7 には、次の機能強化および修正が含まれています。
insertAfter
および insertBefore
アクションにないアセットキーに関連する問題を修正しました。これは、ビジュアルオファーからオファーテンプレートへの移行に関連する問題でした。日付: 2017 年 4 月 14 日
at.js バージョン 0.9.6 には、次の機能強化および修正が含まれています。
A4T のリダイレクトオファーのサポート。at.js バージョン 0.9.6 をダウンロードしてインストールすると、Adobe Analytics(A4T)のレポートソースとして Target を使用するアクティビティでリダイレクトオファーを使用できます。at.js バージョン 0.9.6 のほかにも、リダイレクトオファーと A4T を使用するために実装が満たす必要があるその他の最小要件があります。詳細および追加の重要な情報については、リダイレクトオファー - A4T に関する FAQ を参照してください。
at.js 0.9.6 より前では、訪問者 API がページにある場合に、visitorApiTimeout
設定が積極的すぎると、Target リクエストで MCID データが送信されないという状況が発生する可能性がありました。その結果、A4T を使用しているときに、Analytics で未関連付けヒットなどの問題が発生することがありました。
この動作は、at.js 0.9.6 で変更されました。visitorApiTimeout
が 1 ミリ秒に設定されていても、Target は SDID、トラッキングサーバーおよび顧客 ID データを収集して Target リクエストで送信しようとします。
selectorsPollingTimeout
設定が追加されました。詳しくは、targetGlobalSettings() を参照してください。
getOffer()
からの応答の形式が変更されました。詳しくは、adobe.target.getOffer(options) を参照してください。
サポートされていない <!DOCTYPE>
宣言のコンソールログが追加されました。
1つの mbox に複数のデフォルトオファーが配信されると Target Classic のプラグインが正しく適用されない問題が修正されました。(TGT-22664)
2 文字のトップレベルドメイン(TLD)の Cookie 設定が改良され、これらのドメイン(test.no、autodrives.ca など)に対して mbox Cookie が正しく設定されるようになりました。
at.js バージョン 0.9.6 で、Cookie の保存時に使用するトップレベルドメインを抽出するアルゴリズムが変更されました。これにより、IP を使用するアドレスには Cookie を保存できなくなりました。IP アドレスはテスト目的で使用されるケースがほとんどですが、DNS エントリを使用したり、ローカルボックスのホストファイルを変更したりすることで対処できます。
プロパティが整数値ではなく文字列値の場合の移動および整列操作の処理に関する記述を修正しました。
日付: 2017 年 1 月 20 日
mbox.js 使用時の mbox 名のネーミング要件に対応して、mbox 名にアンパサンド(&)を含む特殊文字を使用できるようになりました。
使用可能な特殊文字のリストについては、at.js の設定を参照してください。
secureOnly
設定が追加され、at.js で HTTPS のみを使用するか、ページのプロトコルによって HTTP と HTTPS との切り替えを許可するかを指定できるようになりました。この詳細設定のデフォルト値は False で、targetGlobalSettings
で上書きできます。
「レガシーブラウザーのサポート」オプションは、at.js バージョン 0.9.3 以前で使用できます。このオプションは、at.js バージョン 0.9.4 で削除されました。
日付: 2016 年 10 月 11 日
日付: 2016 年 9 月 22日
optoutEnabled
設定が追加されました。これが true
に設定されており、訪問者がトラッキングをオプトアウトしている場合は、訪問者のブラウザーで mbox の呼び出しは一切おこなわれません。Device Graph は現在ベータ版です。この設定はデフォルトでは false
に設定されていますが、デバイスグラフを使用するには true
に設定する必要があります。類似のオプションが mbox.js バージョン 61 にあります。CustomEvent
のサポートを通知メカニズムに追加しました。以前は at.js のイベント通知メカニズムが document.addEventListener()
() など通常の DOM API では使用できませんでした。現在は、document.addEventListener()
を使用し、リクエストイベントやコンテンツレンダリングイベントなどの at.js イベントに登録できます。日付: 2016 年 7 月 15 日
Target リリース: 16.6.1
日付: 2016 年 6 月 24 日
VEC オファー使用中の白い画面の問題を修正します。at.js を使用している方は全員、この新しいバージョンへアップグレードしてください。
新規 registerExtension
API
この新しい API は、at.js で使用される jQuery モジュールの一部へ開発者がアクセスし、ライブラリの拡張(プラグイン)を開発することを可能にします。この変更に伴い、気をつけるべき事項がいくつかあります。これは、次の機能を使用しているユーザーのみに影響します。
getSettings()
API は廃止されましたが、registerExtension()
を使用すると同じ機能が利用できます。
getTracking()
API は廃止されましたが、registerExtension()
を使用すると同じ機能が利用できます。
既存の拡張(AngularJS 拡張など)は registerExtension()
の手法を使用するように更新する必要があります。
新しいat.js通知API。
この通知システムの目的は、問題が発生した際に at.js がページ上でどう動作していたかについての理解を助けることです。VEC でよく見られる問題は、IT がページの変更をリリースすると VEC セレクターが壊れ、テストがコンテンツを正しく配信しなくなることです。この通知システムの目的は、この配信の問題をページに知らせることで、開発者がその情報にアクセスして Adobe Analytics のようなシステムに渡し、テストが壊れたという通知をビジネスオーナーに送信できるようにすることです。
新規 targetGlobalSettings()
API メソッド
Target Standard/Premium UI や REST API を使用して設定を構成する代わりに、at.js ライブラリで設定を上書きできます。
日付: 2016 年 5 月 6 日
at.js ライブラリの最初の正式リリースです。
at.js は、一般的な Web 実装とシングルページアプリケーションの両方のために設計された、Target の新しい実装ライブラリです。
at.js は、Adobe Target 実装の mbox.js を置き換えます。
at.js は mbox.js に替わって使用されますが、mbox.js も引き続きサポートされます。ほとんどのユーザーにとって、at.js には mbox.js よりもメリットがあります。このサポートの継続により、at.js をテストしてページ上の実装を変更するための時間が得られます。
多くのメリットがある中でも、at.js は、Web 実装のページ読み込み時間を強化し、セキュリティを強化して、シングルページアプリケーション向けのより優れた実装オプションを提供します。
at.js は、target.js に含まれるコンポーネントを含んでいるので、target.js を呼び出す必要がありません。
at.js を実装する際には、以下のことに注意してください。