我想要 jQuery 等价于这个 CSS 代码:
p:before {
content: 'Intro!';
}
我天真地尝试过$('p:before').css('content', 'Intro!');
,但它不起作用。
如何使用 jQuery 进行伪元素 CSS 修改?
我想要 jQuery 等价于这个 CSS 代码:
p:before {
content: 'Intro!';
}
我天真地尝试过$('p:before').css('content', 'Intro!');
,但它不起作用。
如何使用 jQuery 进行伪元素 CSS 修改?
你不能。
1) 选择器 ,p:before
不仅仅是一个选择器——伪元素定义了不影响实际选择的功能。jQuery 应该返回什么,所有p
标签?就是$(...)
这样——它返回一堆匹配你的选择器的元素。jQuery (Sizzle/ querySelectorAll
) 不知道如何获取:before
...
2) 伪元素/类行为也不能通过 JS API 获得。
通过 JS 动态地做这样的事情的唯一方法是创建一个<style>
元素,如下所示:
$('<style>p:before{content:"intro";}</style>').appendTo('head');
我可以问一下您为什么要首先这样做吗?
你可以这样做:
$(document).append($("<style>p:before{ content: 'Intro!' } </style>"));