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"  | |||
|  | 
 | |||
|  | ``` |