练习2-2,你好,请问index()-'1'的作用是什么?谢谢

来源:2-2 编程练习

weibo_执著的弧线_0

2019-03-31 14:54:58

其中代码段:$('div').eq($(this).index()-'1')

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>点击事件</title>
    <style type="text/css">
        div {
            float: left;
            margin: 10px;
            width: 100px;
            height: 100px;
            color: #fff;
            font-size: 50px;
            text-align: center;
            line-height: 100px;
            text-indent: -9999px;
            background-color: #333;
        }
    </style>
</head>

<body>
<h1>添加事件处理</h1>
<div>43</div>
<div>21</div>
<div>56</div>
<div>16</div>
<div>89</div>
<div>94</div>
<div>46</div>
<div>26</div>
<div>67</div>
<div>90</div>
<div>25</div>
<div>10</div>
<div>84</div>
<div>76</div>
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script>
<script>
    $(document).ready(function () {
        $('div').click(function () {

            $('div').eq($(this).index()-'1').css({'textIndent':'0'}).siblings().css({'textIndent':'-9999px'});
        });


    })//此处写代码
</script>
</body>
</html>


写回答

1回答

好帮手慕糖

2019-04-01

同学你好,$(this).index()是获取当前元素的索引,是从0开始的,但是这里把h标签也算上了,索引第一个div的索引就是1了,可以输出测试下哦;

所以需要减去1,是把开始的h1标签减去。建议:可以写为,如下这种,只在div中选择不包括h1标签。

http://img.mukewang.com/climg/5ca181b50001d29712010099.jpg

兄弟元素这里也是在div中选择哦,不然第一次点击之后,h1标签的内容就不显示了哦,可以测试下。

希望能帮助到你,欢迎采纳。

祝学习愉快!

0

0 学习 · 36712 问题

查看课程