Expand my Community achievements bar.

Adobe script is overriding the event.preventDefault()

Avatar

Level 1

Hi,

On anchor tag click function we use event.preventDefault() to prevent the link from opening. This was working fine so far. Recently, we migrated from DTM to Launch and from then the preventDefault method is not working.

In the below sample when we click on the "test page" link it should not change the URL. But it is changing the URL to "#testpage". In the same page please remove the adobe script and run. It won't change the URL.

Sample Page code:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <a href="#testpage" onclick="gototest(event)">test page</a>
    <script>
        function gototest(e){
            e.preventDefault();
        }
    </script>
    <script type="text/javascript">_satellite.pageBottom();</script>
</body>
</html>
2 Replies

Avatar

Employee

I recommend you take a look at the Link Delay explainer.

The Click event from the Core extension uses this behavior when it is configured with the link delay option on.  My guess is that you've got a Click Event with link delay turned on, and the selector in that event is selecting this link and doing what link delay is designed to do.  You can turn off the link delay or refine the selector in that click event so that it doesn't trigger on this link.

Avatar

Level 1

Thanks for providing the answer. But, as per our web analytics team, turning off the link delay doesn't fix the problem.