我们可以使用jquery编辑元素的现有类吗?

时间:2010-07-05 05:24:09

标签: jquery

我想改变元素的现有类的样式。我们可以在Jquery中这样做吗?如果没有,可以采用什么替代方法?

3 个答案:

答案 0 :(得分:1)

是的,您可以使用toggle方法更改类,并更改元素的样式,您可以使用jquery的.css()方法。

示例:

<!DOCTYPE html>
<html>
<head>
  <style>
  ul { margin:10px; list-style:inside circle; font-weight:bold; }
  li { cursor:pointer; }
  </style>
  <script src="http://code.jquery.com/jquery-latest.min.js"></script>
</head>
<body>
    <ul>
    <li>Go to the store</li>
    <li>Pick up dinner</li>
    <li>Debug crash</li>

    <li>Take a jog</li>
  </ul>
<script>
    $("li").toggle(
      function () {
        $(this).css({"list-style-type":"disc", "color":"blue"});
      },
      function () {
        $(this).css({"list-style-type":"disc", "color":"red"});
      },
      function () {
        $(this).css({"list-style-type":"", "color":""});
      }
    );

</script>
</body>
</html>

答案 1 :(得分:1)

您可以使用.addClass函数使用jQuery向元素添加类,您可以使用.removeClass函数删除它们。

还有一个功能可以在添加和删除类之间切换。它被称为 - 你猜对了 - toggleClass。

请参阅jQuery文档:

http://api.jquery.com/addClass/

http://api.jquery.com/removeClass/

http://api.jquery.com/toggleClass/

您还可以使用.css函数显式设置css样式,但这对类没有任何作用,所以我不确定这是否是您要查找的内容:

http://api.jquery.com/css/

答案 2 :(得分:1)

我不相信使用jQuery编辑类是不可能的,在任何情况下你都不应该这样,因为你想要使用的所有样式都应该在样式表中定义。您不希望编辑JS文件和CSS文件,以便稍后更改您的样式。

但是如果你绝对不得不这样做,或者这样的风格变化少于UI行为(例如你想隐藏.warning类的所有元素,那么你可以简单地做一些事情:

$(".warning").css('display', 'none');

但除了隐藏/显示元素之外,您通常只想使用其他人提到的addClass() / removeClass() / toggleClass()来更改元素的类别。