Expand my Community achievements bar.

Applications for the 2024 Adobe Target Community Mentorship Program are open! Click to the right to learn more about participating as either an Aspirant, to professionally level up with a new Certification, or as a Mentor, to share your Adobe Target expertise and inspire through your leadership! Submit your application today.
SOLVED

Injecting custom code from Target with calls to backend

Avatar

Level 1

Hi,

 

We sometimes inject custom code (ie: offer or banner) into our website that have backend calls to display dynamic data (not Adobe related). The issue we currently have is that because the webpage and the Target injection happen async, sometimes (especially on first load in all browsers, and in IE11) Target code is injected before the page finishes loading all the JS, causing the dynamic data not to show. The only way we are able to get around this issue is to set a timeout in the Target custom code of 3+ seconds so that Target holds on injecting the code until most or all of the page JS is loaded. This is not great for performance.

 

Is there a way through Target to wait until page load is complete before Target code is injected? or can you suggest a way to get around this issue?

 

Thanks!

1 Accepted Solution

Avatar

Correct answer by
Employee Advisor

I dont think target have any inbuilt functionality like this. Also setTimeout can fail in some cases like page not loaded within 3 secs. You can try using setInterval or page load event to fire your code.

View solution in original post

3 Replies

Avatar

Correct answer by
Employee Advisor

I dont think target have any inbuilt functionality like this. Also setTimeout can fail in some cases like page not loaded within 3 secs. You can try using setInterval or page load event to fire your code.

Avatar

Level 2

Hello @Amazi 

 

In my scenarios when Target needs to comunicate with back end. I usually aks for devs in my team to make elements in front to comunicate with back end. 

For example a button that makes a request to back end, soo front help me with the load time, ensurring that all scripts are loaded.

 

But its hard sometimes. You will have to adjust with each scenario 

Avatar

Level 1

Hi @LucasSAndrade,

That's what I ended up doing. Our front-end dev made all the functions available in the main html and target uses them afterwards. The issue with this is every time we need new functionality, we have to ask them to do develop it first before our team has to use it. In any case, this is the only way we were able to work out this scenario.