檢視器SDK名稱空間 viewer-sdk-namespace

檢視器是由許多Viewer SDK元件所建置。 通常網頁不需要直接與SDK元件API互動;所有常見需求都包含在檢視器API本身中。

不過,有些進階使用案例會要求網頁參考使用getComponent()檢視器API的內部SDK元件,然後使用SDK本身的API的所有彈性。

檢視器用來載入及初始化SDK元件的名稱空間取決於檢視器運作的環境。 如果檢視器在Adobe Experience Manager中執行,檢視器會將SDK元件載入s7viewers.s7sdk名稱空間。 同樣地,Dynamic Media Classic提供的檢視器會將SDK載入s7classic.s7sdk

無論是哪種情況,檢視器內SDK使用的名稱空間會以s7viewerss7classic作為前置詞。 此外,它與SDK使用手冊或SDK API檔案中使用的純s7sdk名稱空間不同。 因此,撰寫可與內部檢視器元件通訊的自訂應用程式程式碼時,必須使用完整限定的SDK名稱空間。

例如,如果您計畫接聽StatusEvent.NOTF_VIEW_READY事件,而檢視器是從Experience Manager提供,則完整事件型別為s7viewers.s7sdk.event.StatusEvent.NOTF_VIEW_READY,而事件接聽程式程式碼看起來類似下列:

<instance>.setHandlers({
 "initComplete":function() {
  var videoPlayer = <instance>.getComponent("videoPlayer");
   videoPlayer.addEventListener(s7viewers.s7sdk.event.StatusEvent.NOTF_VIEW_READY, function(e) {
   console.log("view ready");
  }, false);
}
});
The same code for the viewer served from Dynamic Media Classic looks like the following:
<instance>.setHandlers({
 "initComplete":function() {
  var videoPlayer = <instance>.getComponent("videoPlayer");
   videoPlayer.addEventListener(s7classic.s7sdk.event.StatusEvent.NOTF_VIEW_READY, function(e) {
   console.log("view ready");
  }, false);
}
});
recommendation-more-help
b7426f53-aad9-4c00-83fc-664f30f681e8