Хотя они отображаются браузерами через CSS, как если бы они были похожи на другие реальные элементы DOM, сами псевдоэлементы не являются частью DOM, потому что псевдоэлементы, как следует из названия, не являются реальными элементами, и поэтому вы не могут выбирать и манипулировать ими напрямую с помощью jQuery (или любых JavaScript-API, если не на самом деле Selectors API ). Это относится к любым псевдоэлементам, стили которых вы пытаетесь модифицировать с помощью скрипта, а не только ::before
и ::after
.
Вы можете получать только стили псевдоэлементов непосредственно во время выполнения через CSSOM (думаю, window.getComputedStyle()
), который не подвергается jQuery за пределами .css()
, метод, который также не поддерживает псевдоэлементы.
Вы всегда можете найти другие пути вокруг него, хотя для Пример: