27 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | ||
| title: Detect authentic click events
 | ||
| localeTitle: Обнаружение аутентичных событий кликов
 | ||
| ---
 | ||
| ## Обнаружение аутентичных событий кликов
 | ||
| 
 | ||
| Там может быть ситуация, когда вы хотите сделать некоторые конкретные вещи только в том случае, если событие click было действительно инициировано пользователем, а не каким-то скриптом для имитации события click.
 | ||
| 
 | ||
| Существует очень простое решение этой проблемы, объект событий javascript предоставляет нам свойство `.istrusted` , которое можно использовать, чтобы сказать разницу.
 | ||
| 
 | ||
| #### Вот пример использования этого метода
 | ||
| 
 | ||
| ```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" 
 | ||
| 
 | ||
| ``` |