2012-02-08 105 views
4

我想还不如这不工作:是否可以将类添加到伪元素?

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="utf-8" /> 
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 
<script type="text/javascript" > 
$("p:after").addClass("allgone"); 
</script> 
<style type="text/css"> 
p:after { 
content: "daniel"; 
} 
.allgone{ 
display: none; 
} 
</style> 
<title></title> 
</head> 
<body> 
<p></p> 
</body> 
</html> 

JSFIDDLE

+0

伪元素是伪元素。他们不是真正的元素,也不是他们的功能。它们通过CSS呈现。 – Blender 2012-02-08 22:31:53

回答

9

不,但您可以将该类添加到p元素,并为其创建替代样式。

p:after { 
    content: "daniel"; 
} 
p.allgone:after { 
    display: none; 
} 

$('p').addClass('allgone'); 

http://jsfiddle.net/xGUaY/

+1

这是一个很好的提示;)谢谢 – 2012-02-08 22:34:39

3

没有,伪元素不是DOM的一部分,他们无法通过JavaScript访问。

我相信他们是Shadow DOM的一部分。伪元素由浏览器呈现为包含元素内部的内联元素,可以作为第一个或最后一个子元素。

相关问题