Expandir minha barra de realizações na Comunidade.

Join us on September 25th for a must-attend webinar featuring Adobe Experience Maker winner Anish Raul. Discover how leading enterprises are adopting AI into their workflows securely, responsibly, and at scale.

Mark Solution

Esta conversa foi bloqueada devido à inatividade. Crie uma nova publicação.

SOLUCIONADO

Create a data element containing scroll height of a popup

Avatar

Level 5

Hi all!

 

I want to create a data element that saves the distance a customer scrolls within a popup. I can return the value I'm after in the browser console using the following:

 

// Full height of div including scroll
var totalHeight = $("#myDialogContent")[0].scrollHeight;

// Initial height of div that needs to be subtracted
var initialHeight = $("#myDialogContent")[0].clientHeight;

// Actual element height value
var height = totalHeight - initialHeight;

// Scroll depth
var scroll = $("#myDialogContent").scrollTop();

var scrollPercentage = (scroll/height) * 100;

var rounded = Math.round(scrollPercentage);

return rounded;

 

This is the code I've used in the data element. However, when I try to return the value of the data element in the browser I get undefined each time.

 

Any help would be greatly appreciated. 

1 Solução aceita

Avatar

Resposta correta de
Level 5

This worked when I added it into a rule. I don't know why it didn't return through the console but I created a dummy data element change rule referencing the data element created using the above code and it worked as required.

Ver solução na publicação original

3 Respostas

Avatar

Level 4

Might need some more context here. What kind of popup is it? Is it a whole new window popup? If so, you will need to make sure Launch is implemented on it as well.

Avatar

Level 5
It's not a new window (or content in an iframe from a third-party source). It's a modal that simply alternates between display:none and display:block on click of an open or close button. We have Launch coverage on the popup.

Avatar

Resposta correta de
Level 5

This worked when I added it into a rule. I don't know why it didn't return through the console but I created a dummy data element change rule referencing the data element created using the above code and it worked as required.