2016-08-10 6 views
8

:after을 가져와 변수에 할당해야합니다. 것이 가능하다?가짜 요소를 얻는 방법?

querySelectorAll이 작동하지 않습니다.

alert(some_div_with_pseudo.querySelectorAll('::after')[0]) // undefined 
+0

당신은 _cannot_

var color = window.getComputedStyle( document.querySelector('.element'), ':after' ).getPropertyValue('color') 
. 이것들은 실제 DOM의 일부가 아니며 실제 요소에 적용된 스타일 규칙입니다. – somethinghere

답변

0

이 같은 도스한다 : 여기

window.getComputedStyle(
    document.querySelector('somedivId'), ':after' 
); 

샘플 : https://jsfiddle.net/cfwmqbvn/

+0

그것은 스타일을 반환합니다. 요소가 필요합니다. –

+4

": after"는 요소가 아닌 의사 요소입니다. DOM 노드를 반환 할 수는 없습니다. 스타일을 반환하는 것은 할 수 있습니다. – MrBizle

4

당신의 CSS 가정은 다음과 같습니다

.element:after { 
    content: 'NEW'; 
    color: rgb(255, 0, 0); 
} 

은 색상 속성을 검색합니다. 요소 : 이전에 다음 JavaScript를 사용할 수 있습니다 :

이름이 '의사'는 의미로

var color = window.getComputedStyle(
 
\t document.querySelector('.element'), ':after' 
 
).getPropertyValue('color'); 
 
alert(color);
.element:after { 
 
\t content: 'NEW'; 
 
\t color: rgb(255, 0, 0); 
 
}
<div class="element"></div>

+0

스타일을 반환합니다. 요소가 필요합니다 –

+3

소스를 참조하는 것이 좋았습니까 : https://davidwalsh.name/pseudo-element – PhilMarc