Я строю навигацию по сайту, используя элемент. Это будет иметь выпадающее меню. Я пытаюсь выяснить, как добавить событие, чтобы, если пользователь щелкнет где-нибудь за пределами самого раскрывающегося меню или даже за пределами пользовательского элемента, раскрывающееся меню закроется. Я думаю, что это естественное ожидание.
Я подумал о добавлении свойства к своему пользовательскому элементу, который можно использовать как «состояние». А затем добавил в документ прослушиватель событий с помощью метода connectedCallback
жизненного цикла. Но, похоже, я не могу получить доступ к собственности, как я ожидал. Свойство доступно через любые другие элементы, к которым прикреплено событие.
Ниже приведен очень обобщенный c кодекс. Нажатие в любом месте документа должно открыть всплывающее окно, которое показывает, что значение свойства не определено. Однако, если я нажму на кнопку внутри пользовательского элемента, к которому прикреплено событие, этот обработчик событий сможет успешно получить доступ к свойству.
https://codepen.io/aver-mimas/pen/ExjZXMq
Что не так в этом примере?