Avatar ·

Como rastrear clique fora de um elemento em JavaScript?

Olá a todos! Sou novo em JavaScript e estou escrevendo um menu dropdown. Preciso que ele feche quando o usuário clicar em qualquer lugar fora do menu. Já tentei várias opções, mas nada funciona corretamente.\n\nAqui está meu código atual:\n\n```javascript\nconst menu = document.getElementById('myMenu');\n\ndocument.addEventListener('click', function(event) {\n if (event.target !== menu) {\n menu.style.display = 'none';\n }\n});\n```\n\nO problema é que o menu fecha mesmo quando clico em seu conteúdo (por exemplo, em itens da lista ou botões dentro dele). Eu entendo que event.target é o elemento específico clicado, não o contêiner do menu em si. Como verificar corretamente se o clique foi fora do elemento, incluindo todos os seus nós filhos? Preciso de uma solução pura em JavaScript.