Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
BedrockMission!

Learn more

View all

Sign in to view all badges

SOLVED

Is event.button supported with Mousedown event in Adobe Launch?

andylunsford1
Level 2
Level 2

Hello, 

 

I'm trying to implement tracking that identifies right click vs left click on a type of link to answer questions regarding a modal flow.  

 

I need to determine if the user clicked on the link with a right click, left click, or other (middle, back, etc.).  I've been attempting to use event.button to refer to the mouseEvent in the custom code section in the action "Adobe Analytics - Set Variables", but it doesn't appear to be returning any value.

 

Event type that triggers the rule is a  "Mousedown" for the CSS selector "a[target='_generic-interstitial']" configured as shown below:

 

Snag_10c80fbf.png

However, when this rule fires, I notice that the value for event.button appears to be unspecified upon reviewing the beacon set.  Is this supported inside the "Mousedown" event type?


Thanks!

Adobe Analytics Adobe Launch click tracking mousedown UI
1 Accepted Solution
yuhuisg
Correct answer by
Community Advisor
Community Advisor

The "event" object that Launch's Event Types return are usually a "synthetic" event specific to Launch. They are not the actual browser events.

But these synthetic "event" objects normally have a "nativeEvent" field, which refers to the actual browser event. So you should be able to use "event.nativeEvent.button". (I haven't tried this myself.)

You can also use "console.log(event)" in your Rule's Custom Code action to see what Launch returns as its synthetic event.

View solution in original post

3 Replies
andylunsford1
Level 2
Level 2

Answering my own question with a solution I was able to make work for anybody who might have a similar need in the future.  Open to better implementation suggestions!

 

I was able to use the Custom Code event type & utilize jQuery to add the event listener. I imagine it would work with JavaScript as well, but I liked the standardization of event.which to avoid issues with left click & right click being identified differently, especially since we already have jQuery on the site.Snag_112ee687.png

Code below:

$('insert-css-selector-here').mousedown(function(event) {
  if (event.which === 3) {
      trigger();
  }
});

 

yuhuisg
Correct answer by
Community Advisor
Community Advisor

The "event" object that Launch's Event Types return are usually a "synthetic" event specific to Launch. They are not the actual browser events.

But these synthetic "event" objects normally have a "nativeEvent" field, which refers to the actual browser event. So you should be able to use "event.nativeEvent.button". (I haven't tried this myself.)

You can also use "console.log(event)" in your Rule's Custom Code action to see what Launch returns as its synthetic event.

View solution in original post

andylunsford1
Level 2
Level 2
The fact that these are "synthetic" events was the part I was missing. Testing with "console.log(event.nativeEvent.button)" returned a value, thanks!