Jquery last-child()和:未在IE 8中工作后
朋友们好,下面是我的代码 HTMLJquery last-child()和:未在IE 8中工作后,jquery,css,Jquery,Css,朋友们好,下面是我的代码 HTML <ul class="menu-item"> <li>item</li> <li>item</li> <li>item</li> </ul> 我的代码在所有浏览器中都能正常工作,但在IE中却不能正常工作。我正试图用jquery做同样的事情 $(".menu-item li:last-child:after").css('content','
<ul class="menu-item">
<li>item</li>
<li>item</li>
<li>item</li>
</ul>
我的代码在所有浏览器中都能正常工作,但在IE中却不能正常工作。我正试图用jquery做同样的事情
$(".menu-item li:last-child:after").css('content','"hi"');
你可以查一下
但它也不起作用请帮帮我
提前感谢您不能在jQuery中使用
:after
伪选择器,因为元素实际上不存在于DOM中。它在您的示例中起作用,因为它是在CSS中设置的,如果删除该规则,它将不再起作用。IE的问题在于伪选择器没有得到充分支持,而且存在缺陷。:after
和:before
是伪元素,不能在事后进行操作。所以你不能这么做
另一个可能的选择器是
$(".menu-item li").last().css('content', 'hi');
解决这个问题的一个诀窍是。 使用所需的CSS创建一个类
.newClass {}
.newClass:after { content: 'hi'; }
现在使用jQuery切换它们
$(".menu-item li").last().addClass("newClass");
是的,我知道。。我在jquery bcz中使用了
:aftter
,我想表明我想做的是的,但你想做的是不可能的。您不能在jQuery中选择伪元素,因为它不是元素,也不在DOM中。感谢您的帮助@elclanrs。有没有其他方法可以让samei know@Strax。。还有其他方法吗谢谢你的帮助@Starx:)为什么不使用jquery附加另一个li?或者只是附加任何内容周期。
$(".menu-item li").last().addClass("newClass");