The ActivityMap.region
variable allows you to override the logic that Activity Map uses to set region values. This variable is useful in areas where you want to have more control than what ActivityMap.regionExclusions
provides.
This variable completely overrides Activity Map logic. Setting an override function here that returns incorrect values can cause data collection issues with Activity Map dimensions and the Activity Map overlay.
You can use OnBeforeLinkClickSend
callback to alter the Web SDK payload or abort sending data.
There is not a dedicated field in the Adobe Analytics extension to use this variable. Use the custom code editor, following AppMeasurement syntax.
Assign this variable a function that:
If the return value is falsy, all Activity Map context data variables are cleared and no link data is tracked.
Use a lowercase tag name as region:
s.ActivityMap.region = function(clickedElement) {
while (clickedElement && (clickedElement = clickedElement.parentNode)) {
var regionId = clickedElement.tagName;
if (regionId) {
return regionId.toLowerCase();
}
}
}
Use specific desired class names as 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";
}