CSS伪元素(pseudo elements)不是DOM元素,因此你无法直接选择到它们。
假设有如下HTML代码:
1
|
< div class = "techbrood" id = "td_pseudo" >techbrood introduction</ div > |
和CSS代码:
1
2
3
|
.techbrood:before { width : 0 ; } |
现在你想在某个元素的click事件中动态的把techbrood:before的width属性设置为100%,
有两个方法,一个是添加新的样式:
1
|
$( 'head' ).append( "<style>.techbrood::before{ width:100% }</style>" ); |
(注意该方法将影响所有的class为techbrood的元素)
另外一个方法是为该元素添加新类,并通过设置新类的属性来达到改变伪元素属性的效果:
1
2
3
|
.techbrood.change:before{ width : 100% ; } |
jQuery代码:
1
|
$( '#td_pseudo' ).addClass( "change" ); |