zoukankan      html  css  js  c++  java
  • jQuery中的each关键词

    #转载请留言联系

    从一个简单的例子引入,jQuery里的each有什么作用?

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <script src="js/jquery-1.12.4.min.js"></script>
        <script>
            $(function(){
                $('#list li').css({'background':"blue"});
                console.log($('#list li').html())
            })
    
        </script>
    </head>
    <body>
        <ul id="list">
            <li>1</li>
            <li>2</li>
            <li>3</li>
            <li>4</li>
            <li>5</li>
        </ul>
    </body>
    </html>

    打开网页的效果是,列表的每一项背景色都变成蓝色了,但是终端只能输出列表第一项的值1。这是为什么呢?

    原因就是,$('#list li').css({'background':"blue"});这句jQuery代码,里面实际上本质上还是js的循环在完成多个元素的背景修改。

    而获取元素时内部没有循环,当我们需要获取列表的元素时,就需要使用循环或者用each关键词了!

    1.使用循环。

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <script src="js/jquery-1.12.4.min.js"></script>
        <script>
            $(function(){
                for(var i=0;i<$('#list li').length;i++){
                    console.log($('#list li').eq(i).html())
                }
            })
    
        </script>
    </head>
    <body>
        <ul id="list">
            <li>1</li>
            <li>2</li>
            <li>3</li>
            <li>4</li>
            <li>5</li>
        </ul>
    </body>
    </html>
    
    终端输出:
    1
    2
    3
    4
    5

    2.使用each关键词

    语法:

    $(selector).each(function(index,element))
    参数描述
    function(index,element)

    必需。为每个匹配元素规定运行的函数。

    • index - 选择器的 index 位置
    • element - 当前的元素(也可使用 "this" 选择器)

    示例:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <script src="js/jquery-1.12.4.min.js"></script>
        <script>
            $(function(){
                $('#list li').each(function(i,ele){
                    console.log($(ele).html())
                })
            })
        </script>
    </head>
    <body>
        <ul id="list">
            <li>1</li>
            <li>2</li>
            <li>3</li>
            <li>4</li>
            <li>5</li>
        </ul>
    </body>
    </html>

    each()方法能使DOM循环结构简洁,不容易出错。each()函数封装了十分强大的遍历功能,使用也很方便,它可以遍历一维数组、多维数组、DOM, JSON 等等
    在开发过程中使用$each可以大大的减轻我们的工作量。

  • 相关阅读:
    C# 控制台应用程序输出颜色字体[更正版]
    ORM for Net主流框架汇总与效率测试
    php 去掉字符串的最后一个字符
    bzoj1185 [HNOI2007]最小矩形覆盖 旋转卡壳求凸包
    bzoj [Noi2008] 1061 志愿者招募 单纯形
    bzoj1009 [HNOI2008] GT考试 矩阵乘法+dp+kmp
    扩展欧几里得(ex_gcd),中国剩余定理(CRT)讲解 有代码
    BZOJ 2103/3302/2447 消防站 树的重心【DFS】【TreeDP】
    hihocoder 1449 后缀自动机三·重复旋律6
    hihocoder 后缀自动机二·重复旋律5
  • 原文地址:https://www.cnblogs.com/chichung/p/9720405.html
Copyright © 2011-2022 走看看