Можно ли к нему обратится зная id предыдущего элемента
Да, можно, для этого обращаемся к #modals-container
и получаем следующий от него элемент через метод .nextElementSibling
:
document.querySelector('#modals-container').nextElementSibling
Можно ли обратится к такому элементу через свойство стиля?
Тоже можно.
Используйте document.querySelector()
, таким образом у вас есть возможность достучаться до элемента через селекторы..
В селекторах есть возможность обращаться к атрибутам по содержимому, тут нам пригодится оператор *=
, а далее делаем вот такой запрос и получаем данный элемент:
document.querySelector('div[style*="z-index: 777;"]')
Оба эти варианта будут куда быстрее, чем в ещё одном ответе, где мы собираем все div
элементы со страницы и проходим по ним в поисках того самого.
Лично я бы выбрал именно второй вариант, т.к. если вдруг после элемента #modals-container
появится какой-то другой, то скрипт получит уже другой элемент.. В прочем такое может случиться и со вторым вариантом, но мне кажется крайне мала вероятность встретить на странице ещё один div
элемент с z-index: 777
.
Ещё вопросик. А как скрыть этот элемент через JS
Скорее всего этот элемент появляется в вёрстке не сразу при инициализации скрипта, а когда-то после, по этому советую отложить до window.onload
:
window.onload = function() {
var el = document.querySelector('div[style*="z-index: 777;"]')
if(el) el.style.display = "none";
}
Данный код выполнится когда полностью загрузится страница и если в этот момент данный элемент будет существовать, в противном случае предлагаю использовать вариант с MutationObserver