ActivityMap.region

Mit der Variablen ActivityMap.region können Sie die Logik überschreiben, die Activity Map zum Festlegen von Bereichswerten verwendet. Diese Variable ist in Bereichen nützlich, in denen Sie mehr Kontrolle haben möchten als ActivityMap.regionExclusions bietet.

CAUTION
Diese Variable überschreibt die Activity Map-Logik vollständig. Wenn Sie hier eine Überschreibungsfunktion festlegen, die falsche Werte zurückgibt, kann dies zu Problemen bei der Datenerfassung mit Activity Map-Dimensionen und der Activity Map-Überlagerung führen.

Überschreiben von Regionswerten mit der Web-SDK

Sie können OnBeforeLinkClickSend Callback verwenden, um die Web-SDK-Payload zu ändern oder den Versand von Daten abzubrechen.

Überschreiben von Regionen mithilfe der Adobe Analytics-Erweiterung

In der Adobe Analytics-Erweiterung gibt es kein eigenes Feld, um diese Variable zu verwenden. Verwenden Sie den Editor für benutzerdefinierten Code entsprechend der AppMeasurement-Syntax.

ActivityMap.Region im AppMeasurement und im benutzerdefinierten Code-Editor der Analytics-Erweiterung

Weisen Sie dieser Variablen eine Funktion zu, die:

  • das angeklickte HTML-Element erhält und
  • Gibt einen Zeichenfolgenwert zurück. Dieser Zeichenfolgenwert ist der endgültige Wert, der für die Dimension Activity Map Region verwendet wird.

Wenn der Rückgabewert "", werden alle Activity Map-Kontextdatenvariablen gelöscht und es werden keine Linkdaten verfolgt.

Beispiele

Verwenden Sie einen Tag-Namen in Kleinbuchstaben als Region:

s.ActivityMap.region = function(clickedElement) {
  while (clickedElement && (clickedElement = clickedElement.parentNode)) {
    var regionId = clickedElement.tagName;
    if (regionId) {
      return regionId.toLowerCase();
    }
  }
}

Verwenden Sie bestimmte gewünschte Klassennamen als Region:

s.ActivityMap.region = function(ele) {
  var className,
  classNames = {
    'header': 1,
    'navbar': 1,
    'left-content': 1,
    'main-content': 1,
    'footer': 1,
  };
  while ((ele && (ele = ele.parentNode))) {
    if ((className = ele.className)) {
      let classes = className.split(' ');
      for (let i = 0; i < classes.length; i++) {
        if (classNames[classes[i]]) {
          return classes[i];
        }
      }
    }
  }
  return "BODY";
}
recommendation-more-help
b4f6d761-4a8b-4322-b801-c85b9e3be690