27 lines
821 B
Markdown
27 lines
821 B
Markdown
|
---
|
||
|
title: Detect authentic click events
|
||
|
---
|
||
|
|
||
|
## Detect authentic click events
|
||
|
|
||
|
There might be a situation where you want to do some specific things only if the click event was genuinely triggered by a user and not by some script to simulate a click event.
|
||
|
|
||
|
There is a very simple solution to this problem, javascript event object provides us with a `.istrusted` property, which can be used to tell the difference.
|
||
|
|
||
|
#### Here is an example of using this method
|
||
|
|
||
|
```javascript
|
||
|
// Assume there is a button in the HTML
|
||
|
const button = document.querySelector('button');
|
||
|
|
||
|
button.addEventListener('click', (e) => {
|
||
|
if (e.isTrusted) {
|
||
|
console.log('Button clicked by a real user');
|
||
|
} else {
|
||
|
console.log('Button click simulated by a script');
|
||
|
}
|
||
|
});
|
||
|
|
||
|
button.click() // Outputs "Button click simulated by a script"
|
||
|
```
|