javascript选择样式标签?

发布于 2024-11-07 02:12:00 字数 193 浏览 0 评论 0原文

我认为您可以通过执行以下操作来选择样式元素:

<style id="mystyle"></style>

然后

$('#mystyle').remove()

但是不行。 js中如何选择样式?

谢谢。

I thought that you could select a style element by doing:

<style id="mystyle"></style>

And then

$('#mystyle').remove()

But no go. How do I select the style in js?

Thanks.

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

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

发布评论

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

评论(4

吃→可爱长大的 2024-11-14 02:12:00

根据规范,样式元素不能有 id 属性。

<!ELEMENT STYLE - - %StyleSheet        -- style info -->
<!ATTLIST STYLE
  %i18n;                               -- lang, dir, for use with title --
  type        %ContentType;  #REQUIRED -- content type of style language --
  media       %MediaDesc;    #IMPLIED  -- designed for use with these media --
  title       %Text;         #IMPLIED  -- advisory title --
  >

来源

然而,在实践中,浏览器通常会让你摆脱这些事情。但它们的实现可能有所不同。

您是否考虑过通过其他方式选择它? $('head style:eq(1)) 怎么样。

The style element can't have an id attribute, according to the spec.

<!ELEMENT STYLE - - %StyleSheet        -- style info -->
<!ATTLIST STYLE
  %i18n;                               -- lang, dir, for use with title --
  type        %ContentType;  #REQUIRED -- content type of style language --
  media       %MediaDesc;    #IMPLIED  -- designed for use with these media --
  title       %Text;         #IMPLIED  -- advisory title --
  >

Source.

However, in practice, browsers generally let you get away with these things. Their implementations may be different though.

Have you considered selecting it via another means? What about $('head style:eq(1)).

美男兮 2024-11-14 02:12:00

试试这个:

$('style[id=mystyle]').remove()

try this:

$('style[id=mystyle]').remove()

梅倚清风 2024-11-14 02:12:00

似乎在 Firefox 4.x 中工作正常...

现场演示

$('#mystyle1').remove();

$('style[id=mystyle2]').remove();

document.body.removeChild(document.getElementById('mystyle3'));

Seems to work fine in Firefox 4.x ...

Live Demo

$('#mystyle1').remove();

$('style[id=mystyle2]').remove();

document.body.removeChild(document.getElementById('mystyle3'));
老娘不死你永远是小三 2024-11-14 02:12:00

也许你可以尝试这个解决方法?

$("head").find("#mystyle")

或者,回到基础知识并使用老式的 javascript:

document.getElementById("mystyle")

Maybe you could try this workaround?

$("head").find("#mystyle")

Or alternatively, go back to basics and use old school javascript:

document.getElementById("mystyle")
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文