toggleClass 用来给匹配元素切换类

语法

参考 http://www.w3schools.com/jquery/html_toggleclass.asp

    $(selector).toggleClass(classname,function(index,currentclass),switch)

但是个人感觉应该是这样的:

    $(selector).toggleClass(classname)
    $(selector).toggleClass(classname,switch)
    $(selector).toggleClass(function(index,currentclass),switch)

同时指定了classname和function 只有classname生效

参数说明

Parameter Description
classname Required. Specifies one or more class names to add or remove. To specify several classes, separate the class names with a space
function(index,currentclass) Optional. Specifies a function that returns one or more class names to add/remove
  • index - Returns the index position of the element in the set
  • currentclass - Returns current class name of selected elements
switch Optional. A Boolean value specifying if the class should only be added (true), or only be removed (false)

解释

  • classname 必须的,指定一个或多个类名来添加或移除,多个类名之间用空格分隔
  • function(index,currentclass) 可选的 使用一个方法来返回一个或多个类名来添加或删除,
    index 返回元素的在集合中的序号
    currentclass 返回选中元素当前的类名
  • switch 可选 布尔值,如果为true 则只添加 false只删除 相当于addClass和removeClass

    demo

    指定classname来切换类
    <html>
    <head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    <script>
    $(document).ready(function(){
    $("button").click(function(){
        $("p").toggleClass("main");
    });
    });
    </script>
    <style>
    .main {
    font-size: 120%;
    color: red;
    }
    </style>
    </head>
    <body>
    <p>This is a paragraph.</p>
    <p class="main">This is another paragraph.</p>
    <button>Toggle class "main" for p elements</button>
    </body>
    </html>

    结果 :
    点击切换按钮后,两个段落的文本红色显示将进行切换,默认第一个没有main而第二个有 第一次点击时,给第一个添加 给第二个移除,之后的点击以此类推

  • 如果一次操作多个类 类名之间空格分隔即可

参数switch

加上参数switch 值为true或false
为true是只添加,false只移除,作用应该和addClass removeClass 相同

function返回类名

关于使用function来返回类名,在一个w3c上的demo:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <link rel="stylesheet" href="css/common.css">
    <script src="js/jquery-1.11.0.min.js"></script>
    <style>
    .listitem_1,
    .listitem_3 {
        color: red;
    }

    .listitem_0,
    .listitem_2 {
        color: blue;
    }
    </style>
</head>
<body>
    <ul>
        <li>Peter</li>
        <li>Lois</li>
        <li>Chris</li>
        <li>Stewie</li>
    </ul>
    <button>Add/remove classes to list items</button>
</body>
<script>
$(document).ready(function() {
    $("button").click(function() {
        $("li").toggleClass(function(n) {
            return "listitem_" + n;
        });
    });
});
</script>
</html>

点击按钮切换:


<!-- 状态1 -->
<ul>
  <li class="">Peter</li>
  <li class="">Lois</li>
  <li class="">Chris</li>
  <li class="">Stewie</li>
</ul>
<!-- 状态2 -->
<ul>
  <li class="listitem_0">Peter</li>
  <li class="listitem_1">Lois</li>
  <li class="listitem_2">Chris</li>
  <li class="listitem_3">Stewie</li>
</ul>

最新文章

  1. Java和.NET使用DES对称加密的区别
  2. CDN网络的原理
  3. log4j2配置
  4. nl命令详解
  5. EL表达式详解
  6. C puzzles详解【38-45题】
  7. JVM 关闭前执行命令的钩子
  8. wxPython tools img2py
  9. 目前IT行业的几个大方向
  10. lucene 索引查看工具
  11. React添加自定义属性
  12. 设计模式,Let&#39;s “Go”! (中)
  13. Mysql基准测试详细解说(根据慕课网:《打造扛得住Mysql数据库架构》视频课程实时笔录)
  14. 从壹开始前后端分离 42 ║支持多种数据库 &amp; 快速数据库生成
  15. python中的基础2
  16. repeter 控制一行中显示几条内容
  17. Codeforces828 D. High Load
  18. C++使用目录
  19. 11月24日 layouts and rendering in rails(部分没有看)
  20. pytest集成Allure Report

热门文章

  1. lable标签透明
  2. [ActionScript 3.0] AS3实现图像径向转旋效果
  3. JDBC中的事务-Transaction
  4. ubuntu 14.10 安装 zabbix
  5. div 滚动定位代码
  6. (转)直接拿来用!最火的iOS开源项目(二)
  7. Android 定时器TimerTask 简单使用
  8. 网络安全学习和CTF必不可少的一些网站
  9. linux服务器查看公网IP信息的方法
  10. tomcat, jdk, eclipse, ant的安装,设置及常见问题