问答详情
源自:3-6 jQuery的属性与样式之切换样式.toggleClass()

$("li").toggleClass(function(n){ return "listitem_" + n; });n 表示什么意识?

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title>菜鸟教程(runoob.com)</title>

<script src="http://cdn.static.runoob.com/libs/jquery/1.10.2/jquery.min.js">

</script>

<script>

$(document).ready(function(){

$("button").click(function(){

$("li").toggleClass(function(n){

return "listitem_" + n;

});

});

});

</script>

<style>

.listitem_1, .listitem_3{

color:red;

}

.listitem_0, .listitem_2{

color:blue;

}

</style>

</head>

<body>


<h1>这是一个标题</h1>

<ul>

<li>Peter</li>

<li>Lois</li>

<li>Chris</li>

<li>Stewie</li>

</ul>

<button>添加/移除列表项的类</button>


</body>

</html>


提问者:web_東 2018-03-10 00:06

个回答

  • 深山老龟
    2018-03-11 22:57:20
    已采纳

    n 你可以看成下标  0 1 2 3,这是在给<li> 标签增加或者删除class 所对应的样式,用了一个回调函数而已

  • web_東
    2018-03-13 20:01:07

    谢谢,我明白啦,

  • web_東
    2018-03-13 20:01:06

    谢谢,我明白啦,

  • qq_张星海_0
    2018-03-13 19:21:23

    这里n就是得到的li标签的下标的意思了

  • 笑阳不爱钱才
    2018-03-11 23:20:58

    像楼上说的,jq里的这个funcion是回调函数,是已经封装完的程序,我的理解它的功能就是根据填入的参数值,按照一定的方法(或者叫顺序)执行。具体里面怎么写的,可以再去了解下。用在这就是为了让程序返回listitem0,listitem1,listitem2,listitem3这四个值,因为一共就4个li,所以到3就停了。再加上.toggleclass()方法,实现添加删除类名这样一个操作