2013-05-02 130 views
1

我试图用php变量改变my:before元素的背景颜色。变量整齐地返回一个十六进制代码,如#123456。我试过这段jQuery/JavaScript来获得这个工作,但事实并非如此。有谁知道我做错了什么?基于php变量改变a:before元素的背景颜色

<script> 
    $(document).ready(function(){ 
     $('#tpl-contact:before').css("background", "<?=$sColor;?>"); 
    }); 
</script> 
+0

你也可以向我们展示HTML代码,你想要应用背景颜色/ – 2013-05-02 11:08:59

+0

你不能。 ':之前'和':之后'是伪元素,并不存在于DOM中。 – ahren 2013-05-02 11:11:12

+0

@ahren:jQuery不是DOM,它可能具有超能力。所以你永远不知道。 ;)(至少OP可以有一个插件,提供这个,因为你知道我们可以扩展选择器) – hakre 2013-05-02 11:12:46

回答

2

请尽量不要使用jQuery。 HTML和CSS应该足够了。

快速了解其工作原理的另一种方法是逐步完成这项工作。做:

$('#tpl-contact:before').css("background", "#123456"); 

已经做了你想做的事情?如果是,继续,如果没有,你已经排除PHP为罪魁祸首。我通常这样做。

问题"How do I access style properties of pseudo-elements with jQuery?"也可能有一些额外的指针。