Если ваш элемент `<a>` с идентификатором "logo" находится внутри кастомного тега, то проблема может заключаться в том, что элемент еще не создан или доступен в DOM в момент, когда вы пытаетесь его запросить. Например, если кастомный тег загружает свой контент асинхронно или после события (например, после загрузки страницы), может потребоваться дождаться завершения этого процесса.
Вот несколько способов, которые могут помочь вам получить доступ к элементу внутри кастомного тега:
1. **Использовать `DOMContentLoaded` для ожидания завершения загрузки DOM:**
Убедитесь, что ваш код выполняется только после полной загрузки DOM.
```javascript
document.addEventListener("DOMContentLoaded", function() {
const logoElement = document.getElementById("logo");
console.log(logoElement); // Теперь должно работать
});
```
2. **Использовать MutationObserver:**
Если ваш кастомный тег добавляет содержимое динамически, вы можете использовать `MutationObserver`, чтобы следить за изменениями в DOM.
```javascript
const targetNode = document.querySelector('custom-tag-selector'); // Замените на ваш кастомный тег
const config = { childList: true, subtree: true };
const callback = function(mutationsList) {
for (const mutation of mutationsList) {
if (mutation.type === 'childList') {
const logoElement = document.getElementById("logo");
if (logoElement) {
console.log(logoElement); // Элемент найден
observer.disconnect(); // Отключаем наблюдатель, если элемент найден
}
}
}
};
const observer = new MutationObserver(callback);
observer.observe(targetNode, config);
```
3. **Проверка и доступ к логотипу через кастомный тег:**
Попробуйте сначала получить доступ к кастомному тегу, а затем найти элемент `<a>` внутри него:
```javascript
const customTag = document.querySelector('custom-tag-selector'); // Замените на ваш кастомный тег
const logoElement = customTag ? customTag.querySelector('#logo') : null;
console.log(logoElement); // Теперь должно работать
```
Убедитесь, что вы правильно используете селекторы и что элемент с идентификатором "logo" действительно существует в момент обращения к нему.