Ниже приведен пример простого скрипта, который будет console.log о первом появлении родителя с позицией либо абсолютной, либо относительной.
Чтобы использовать это правильно, измените currentElement
с помощью селектора, который подходит вашему элементу, который вы хотите видеть родителем, или вы можете сделать это классным способом:
Откройте dev-tools и проверьте ваш элемент. Элемент теперь будет выделен серым цветом, а == $0
появится позади. Это означает, что вы можете обратиться к этому элементу в консоли, просто набрав $0
.
Теперь, когда элемент выбран в dev-tools. Скопируйте приведенный ниже скрипт в консоль разработчика и перед выполнением измените currentElement
на currentElement = $0
.
Выполните скрипт (нажмите enter) и подождите, пока элемент не будет зарегистрирован в консоли.
Когда элемент зарегистрирован, вы можете навести его на консоль, чтобы увидеть его на своей странице.
Если вы не видите, как элемент выделяется на вашей странице, вы можете щелкнуть правой кнопкой мыши зарегистрированный элемент консоли и выбрать «Scroll to view»
console.log('started searching')
let currentElement = document.getElementById('test')
let run = true
const values = ['absolute', 'relative']
while (run) {
const elementPositionValue = window.getComputedStyle(currentElement).getPropertyValue('position')
const hasValueWeWant = values.includes(elementPositionValue)
if (currentElement.tagName === "BODY" && !hasValueWeWant) {
console.log('No elements with', values)
run = false
}
if (hasValueWeWant) {
console.log('Found element: ', currentElement)
run = false
} else {
currentElement = currentElement.parentElement
}
}
<div>
<div>
<div style="position:relative;">
<div>
<div>
<div>
<div>
<p id="test">
crazy indented
</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>