2013-07-18 54 views
2

例如,我有这样一行:jQuery的工作原理是:之前和之后:选择器之后?

$('div#about_title:after').remove(); 

,它似乎并没有工作,我怎么能做到这一点?

+0

你在说什么': :在'/'::之后'伪元素之前?如果是这样,不,没有办法直接从DOM操作那些。 –

+1

另一个有用的小技巧:你正在使用的选择器(''div#about_title')将比执行简单的'#about_title'更慢。这是因为id-only选择器可以直接映射到getElementById(它闪电般快),而其他的则必须通过选择器引擎([sizzle](http://sizzlejs.com/))进行解析。 – jbabey

回答

2

伪元素,所以它们不能被JavaScript(以及因此的jQuery)来操纵。

您可以编辑CSS将其删除:

<div class="afterStuff"></div> 

div.afterStuff:after { 
    content: "hi"; 
} 

$('.afterStuff').removeClass('afterStuff'); 

我会建议增加/过直接修改联样式删除类。

http://jsfiddle.net/UUPks/

0

尝试使用由:before:after不要在DOM技术上存在创建的.next()代替:after

0

你不能因为使用你已经通过ID获取元件后ID只对应一个元素,那么为什么就不需要把后

$('div#about_title').remove(); 
相关问题