如何获得具有特定风格的元素

chris97ong

所以说我体内有这个:

<body>
<h1>Hello world!</h1>
<h2 style="color: Blue;">This is my webpage</h2>
<a style="color: Blue;" onClick="changeElem();">Welcome!</a><br>
<h3>Goodbye</h3>
</body>

我想创建函数changeElem(),以便它将蓝色到黑色的内容更改。所以这是我想要在使用此函数后得到的结果:

<h1>Hello world!</h1>
<h2 style="color: Black;">This is my webpage</h2>
<a style="color: Black;" onClick="changeElem();">Welcome!</a><br>
<h3>Goodbye</h3>

如何才能做到这一点?

TJ人群

您最好使用CSS而不是内联样式进行此操作。

<head>
<style>
/* By default, elements with class="some-class" are blue */
.some-class {
    color: blue;
}

/* But if body has the class "updated", they turn black */
body.updated .some-class {
    color: black;
}
</style>
<h1>Hello world!</h1>
<h2 class="some-class">This is my webpage</h2>
<a class="some-class" onClick="changeElem();">Welcome!</a><br>
<h3>Goodbye</h3>
</body>

...在哪里changeElem

function changeElem() {
    document.body.className += " updated";
}

现场示例| 现场直播


如果你死心塌地使用内联样式,这是不是一个好主意,你仍然可以做到这一点很容易不够:

function changeElem() {
    var div, colorValue, list, index, element;

    // Figure out what this browser returns for `color: Blue`
    // (it might be "Blue", "blue", "rgb(0, 0, 255)",
    // "rgba(0, 0, 255, 0)", "#0000FF", "#0000ff",
    // or possibly others)
    div = document.createElement('div');
    document.body.appendChild(div);
    div.innerHTML = '<span style="color: Blue;"></span>';
    colorValue = div.firstChild.style.color;
    document.body.removeChild(div);

    // Get list of all elements that have any `style` attribute at all
    list = document.querySelectorAll('[style]');

    // Loop through looking for our target color
    for (index = 0; index < list.length; ++index) {
        element = list[index];
        if (element.style.color === colorValue) {
            element.style.color = "black";
        }
    }
}

现场示例| 现场直播

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何获得具有特定后继元素的元素?

来自分类Dev

如果有很多具有相同类的元素,如何使用JavaScript获得特定元素?

来自分类Dev

如何选择具有特定类的元素?

来自分类Dev

如何获得具有相同键的所有元素的数组?

来自分类Dev

如何获得具有特定权限的所有角色

来自分类Dev

如何获得具有特定名称的所有节点

来自分类Dev

如何获得具有继承宽度的元素的宽度?

来自分类Dev

如何获得具有多个类名的元素?

来自分类Dev

删除具有Gradle产品风格的AndroidManifest元素

来自分类Dev

如何获得具有特定字符的行的行号?

来自分类Dev

如何获得具有特定值的垫子的索引?

来自分类Dev

如何访问特定矩阵元素或具有特定索引 Haskell

来自分类Dev

如何获得特定元素的值

来自分类Dev

如何滤除具有特定属性的元素(或保留不具有该属性的元素)

来自分类Dev

如何确定哪个元素具有特定的类名?

来自分类Dev

xmlstarlet:如何省略具有特定属性的元素?

来自分类Dev

jquery:如何过滤具有多个特定子级的元素?

来自分类Dev

如何根据位置删除具有内容的特定元素

来自分类Dev

如何使用jQuery查找具有特定颜色的元素

来自分类Dev

jQuery如何过滤具有特定数据属性的元素

来自分类Dev

xmlstarlet:如何省略具有特定属性的元素?

来自分类Dev

如何使用jQuery选择具有特定值的按钮元素?

来自分类Dev

jquery:如何过滤具有多个特定子级的元素?

来自分类Dev

如何选择类中具有特定元素的div?

来自分类Dev

如何检查.Attr元素是否具有特定类?

来自分类Dev

如何删除具有特定数量元素的子数组

来自分类Dev

如何使用'this'在jQuery中选择具有类的特定元素

来自分类Dev

如何在堆栈中具有多种构建风格?

来自分类Dev

如何获得具有相同序列号的表中所有元素的列表?

Related 相关文章

  1. 1

    如何获得具有特定后继元素的元素?

  2. 2

    如果有很多具有相同类的元素,如何使用JavaScript获得特定元素?

  3. 3

    如何选择具有特定类的元素?

  4. 4

    如何获得具有相同键的所有元素的数组?

  5. 5

    如何获得具有特定权限的所有角色

  6. 6

    如何获得具有特定名称的所有节点

  7. 7

    如何获得具有继承宽度的元素的宽度?

  8. 8

    如何获得具有多个类名的元素?

  9. 9

    删除具有Gradle产品风格的AndroidManifest元素

  10. 10

    如何获得具有特定字符的行的行号?

  11. 11

    如何获得具有特定值的垫子的索引?

  12. 12

    如何访问特定矩阵元素或具有特定索引 Haskell

  13. 13

    如何获得特定元素的值

  14. 14

    如何滤除具有特定属性的元素(或保留不具有该属性的元素)

  15. 15

    如何确定哪个元素具有特定的类名?

  16. 16

    xmlstarlet:如何省略具有特定属性的元素?

  17. 17

    jquery:如何过滤具有多个特定子级的元素?

  18. 18

    如何根据位置删除具有内容的特定元素

  19. 19

    如何使用jQuery查找具有特定颜色的元素

  20. 20

    jQuery如何过滤具有特定数据属性的元素

  21. 21

    xmlstarlet:如何省略具有特定属性的元素?

  22. 22

    如何使用jQuery选择具有特定值的按钮元素?

  23. 23

    jquery:如何过滤具有多个特定子级的元素?

  24. 24

    如何选择类中具有特定元素的div?

  25. 25

    如何检查.Attr元素是否具有特定类?

  26. 26

    如何删除具有特定数量元素的子数组

  27. 27

    如何使用'this'在jQuery中选择具有类的特定元素

  28. 28

    如何在堆栈中具有多种构建风格?

  29. 29

    如何获得具有相同序列号的表中所有元素的列表?

热门标签

归档