at.js 自訂事件
關於 at.js custom events
的資訊,可讓您知道 mbox 要求或選件失敗或成功的時間。
在過去,mbox.js (現已被取代)不會讓頁面上執行的其他JavaScript程式碼知道背景中進行的動作。 利用提升的 at.js,我們有一個獨特的機會可修正此問題。
根據我們的客戶,客戶想要收到數個案例的通知,其中包括:
- mbox 要求由於逾時、錯誤的狀態代碼、JSON 剖析錯誤等等失敗。
- mbox 要求成功。
- 由於遺漏包裝 mbox 元素、找不到選取器等等,選件呈現失敗。
- 選件呈現成功。DOM 變更已套用。
預先定義的事件具有可讓您根據事件類型,擷取需要資料的結構。
為了確定事件可以用在不同的案例,自訂事件具有已指派給事件物件 (傳遞至處理常式) 之承載物件的詳細資料屬性。同時為了避免以事件名稱的形式傳遞字串,事件會使用 adobe.target.event
名稱空間以常數形式公開。
結構
有數個案例通知能夠協助您追蹤、偵錯和自訂與 at.js 的互動。
以下所列的每個自訂事件有兩個格式:「常數」和「字串值」。
- 常數: 在前端加上
adobe.target.event.
,以全大寫呈現,並包含底線字元。若要在 at.js 載入 之後 但在收到 mbox 回應 之前 訂閱自訂事件,請使用常數。 - 字串值: 小寫並包含破折號。若要在 at.js 載入 之前 訂閱自訂事件,請使用字串值。
要求失敗
常數: adobe.target.event.REQUEST_FAILED
字串值: at-request-failed
說明: mbox 要求由於逾時、錯誤的狀態代碼、JSON 剖析錯誤等等失敗。
要求成功
常數: adobe.target.event.REQUEST_SUCCEEDED
字串值: at-request-succeeded
說明: mbox 要求成功。
內容呈現失敗
常數: adobe.target.event.CONTENT_RENDERING_FAILED
字串值: at-content-rendering-failed
說明: 由於遺漏包裝 mbox 元素、找不到選取器等等,選件呈現失敗。
內容呈現成功
常數: adobe.target.event.CONTENT_RENDERING_SUCCEEDED
字串值: at-content-rendering-succeeded
說明: 選件呈現成功。DOM 變更已套用。
資料庫已載入
常數: adobe.target.event.LIBRARY_LOADED
字串值: at-library-loaded
說明: 此事件非常適合追蹤 at.js 已完整載入的時間。您可以使用此事件來自訂全域 mbox 執行。您也可以使用此事件來停用全域 mbox,然後稍後接聽此事件來觸發全域 mbox。
要求開始
常數: adobe.target.event.REQUEST_START
字串值: at-request-start
說明: 此事件是在 HTTP 要求執行之前觸發。您可以對使用資源計時 API 進行的效能測量使用此事件。
內容呈現開始
常數: adobe.target.event.CONTENT_RENDERING_START
字串值: at-content-rendering-start
說明: 此事件是在選取器輪詢開始和內容呈現至頁面之前觸發。您可以使用此事件來追蹤內容呈現進度。
內容呈現無選件
常數: adobe.target.event.CONTENT_RENDERING_NO_OFFERS
字串值: at-content-rendering-no-offers
說明: 此事件是在沒有傳回任何選件時觸發。
內容呈現重新導向
常數: adobe.target.event.CONTENT_RENDERING_REDIRECT
字串值: at-content-rendering-redirect
說明:此事件是在選件為重新導向,Target將重新導向至其他URL時觸發。
sessionId
和 deviceId
。在部分情況下,可以遺漏 deviceId
,因為 Target 無法從 Edge 伺服器擷取它。裝置上決策成品已成功
常數:
adobe.target.event.ARTIFACT_DOWNLOAD_SUCCEEDED
字串值: artifactDownloadSucceeded
說明:成功下載裝置上決策成品時呼叫。
裝置上決策成品失敗
常數: adobe.target.event.ARTIFACT_DOWNLOAD_FAILED
字串值: artifactDownloadFailed
說明:當裝置上決策成品無法下載時呼叫。
使用狀況
document.addEventListener(adobe.target.event.REQUEST_SUCCEEDED, function(event) {
console.log('Event', event);
});
訓練影片:回應Token和at.js自訂事件
觀看以下影片,瞭解如何使用回應Token和at.js自訂事件,共用從Target到協力廠商系統的設定檔資訊。