使用“.css”作为伪元素

发布于 2024-12-09 11:08:15 字数 556 浏览 0 评论 0原文

可能的重复:
使用 jQuery 操作 CSS :before 和 :after 伪元素

我想要 jQuery 等效于此 CSS 代码:

p:before {
   content: 'Intro!';
}

我天真地尝试了 $('p:before').css('content', '介绍!'); 但它不起作用。

如何使用 jQuery 进行伪元素 CSS 修改?

Possible Duplicate:
Manipulating CSS :before and :after pseudo-elements using jQuery

I would like to the jQuery equivalent this CSS code:

p:before {
   content: 'Intro!';
}

I've naively tried $('p:before').css('content', 'Intro!'); but it doesn't work.

How can I do pseudo-element CSS modifications using jQuery?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

断爱 2024-12-16 11:08:15

你不能。

1) 选择器 p:before 不仅仅是一个选择器—— psuedo 元素定义了不影响实际选择的功能。 jQuery 应该返回什么,所有 p 标签?这就是 $(...) 所做的一切——它返回一堆与您的选择器匹配的元素。 jQuery (Sizzle/querySelectorAll) 不知道如何获取 :before...

2) 伪元素/类行为也无法通过 JS API 获得。

通过 JS 动态执行此类操作的唯一方法是创建一个

$('<style>p:before{content:"intro";}</style>').appendTo('head');

请问您为什么要首先执行此操作?

You can't.

1) The selector, p:before, is not just a selector -- the psuedo element defines functionality that does not affect the actual selection. What is jQuery supposed to return, all p tags? That's all $(...) does -- it returns a bunch of elements that match your selector. jQuery (Sizzle/querySelectorAll) doesn't know how to fetch :before...

2) Psuedo-element/class behaviour is not available via JS APIs either.

The only way to do something like this, dynamically via JS, would be to create a <style> element, like so:

$('<style>p:before{content:"intro";}</style>').appendTo('head');

May I ask why you want to do this in the first place?

春夜浅 2024-12-16 11:08:15

你可以这样做:

$(document).append($("<style>p:before{ content: 'Intro!' } </style>"));

You can do this:

$(document).append($("<style>p:before{ content: 'Intro!' } </style>"));
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文