Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用jQuery更改多个元素的样式?_Javascript_Jquery_Css_Css Selectors - Fatal编程技术网

Javascript 如何使用jQuery更改多个元素的样式?

Javascript 如何使用jQuery更改多个元素的样式?,javascript,jquery,css,css-selectors,Javascript,Jquery,Css,Css Selectors,我有一个CSS样式表,规则如下: h1, h2, h3, h4, .contentheading, .title{ font-size: 13px ; font-weight: normal; font-family: Arial, Geneva, Helvetica, sans-serif ; } 标签、类是由插件生成的,所以我不能向其中添加任何类 那么,有没有什么方法可以在运行时一次更改所有元素的样式,而不需要逐个检查它们?在jQuery中可以像在Css中一样使用多个选择器。也许不

我有一个CSS样式表,规则如下:

h1, h2, h3, h4, .contentheading, .title{

 font-size: 13px ;
 font-weight: normal;
 font-family: Arial, Geneva, Helvetica, sans-serif ;
}
标签、类是由插件生成的,所以我不能向其中添加任何类


那么,有没有什么方法可以在运行时一次更改所有元素的样式,而不需要逐个检查它们?

在jQuery中可以像在Css中一样使用多个选择器。也许不是最好的性能,但会起作用

$('h1, h2, h3, h4, .contentheading, .title').css('color', 'red');
$('h1, h2, h3, h4, .contentheading, .title').addClass('someOtherClass');
在CSS中:

* {
    font-size: 13px;
    font-weight: normal;
    font-family: Arial, Geneva, Helvetica, sans-serif;
}

因为这个问题被标记为jQuery,所以使用
*
选择器应该可以帮助您获取所有元素。然后可以使用
css
方法更改样式

$('*').css();
在CSS中,您可以使用相同的
*
选择器将某些样式应用于所有元素,但请确保将其放在CSS文件的最后,以便覆盖所有其他规则

* {
    font-size: 13px;
    font-weight: normal;
    font-family: Arial, Geneva, Helvetica, sans-serif;
}

这对于jQuery来说非常简单。只需将有问题的选择器用作jQuery选择器,然后更改css。所以JavaScript/jQuery代码是这样的,假设您想要更改
字体大小
字体重量

$('h1, h2, h3, h4, .contentheading, .title').css({
  'font-size': '17px',
  'font-weight': 'bold'
});

听起来您对jQuery还不熟悉,您可能想熟悉和网站。

有没有办法让我获得所有元素的当前字体大小,然后再增加一个是的。只需迭代每个元素。但有两个问题。如果DOM很大,并且大小不一定是px,那么它可能会很昂贵,也可能是pt、em或%。那会让你的工作变得更难。为什么要在JavaScript中执行此操作?与其执行两次查找,不如链接方法调用:
$('h1…').css('color','red').addClass('someOtherClass')这是一个演示如何将css应用于所有这些元素或应用一个类的示例…..我可以知道如果我们使用这个对性能有什么影响吗?
$('h1, h2, h3, h4, .contentheading, .title').css({
  'font-size': '17px',
  'font-weight': 'bold'
});