zoukankan      html  css  js  c++  java
  • clone data

    .clone( )

        <div class="demo"></div>
        <script src = "./jquery.js"></script>
        <script>
            $('.demo').clone().appendTo('body');//克隆 demo上的属性也会克隆过来(自定义属性也可)
    
        </script>
        <div class="demo" style="100px; height:100px;background-color:red"></div>
        <script src = "./jquery.js"></script>
        <script>
            $('.demo').click(function(){
                alert(0);
            });
            $('.demo').clone(true).appendTo('body');
            //事件在clone()里添加参数才能克隆 (并不是所有事件都能克隆)
            $('.demo').prop('data-log','1111')
            console.log( $('.demo').clone.prop('data-log','1111') )//prop里的信息克隆不出来(用data)
            //data jQuery dom 存信息存数据存状态 (data信息存在jQuery对象上,jQuery对象与dom对象有一定映射关系)
            //data 用法:
            $('.demo').data('data-duyi','cg')//值不会存在行间样式之中,但是可以取出来
            $('.demo').data({
                name:'li',
                age:15,
                sex:true
            });//可以传多个值  在控制台取值:$('.demo').data('name'),可以取出name值
            //age是15 取出的就是数字15  用attr取值都是字符串
    
    
        <style>
            .tpl{
                display:none;
            }
        </style>
    <body>
        <table class="stb">
            <tr>
                <th>姓名</th>
                <th>年龄</th>
                <th>班级</th>
            </tr>
            <tr class="tpl">
                <td></td>
                <td></td>
                <td></td>
            </tr>
        </table>
        <script src="./jquery.js"></script>
        <script>
            //克隆使用的场景
            var studentArr = [
                {
                    name: 'li',
                    age: 18,
                    class: 3
                },
                {
                    name: '小王',
                    age: 20,
                    class: 2
                },
                {
                    name: '小李',
                    age: 23,
                    class: 1
                },
            ]; 
            var oWrapper = $('.stb')
            studentArr.forEach(function(ele,index){
               var oCloneDom = $('.tpl').clone().removeClass('tpl');
               oCloneDom
                 .find('td')
                    .eq(0)
                      .text(ele.name)
                        .next()
                          .text(ele.age)
                            .next()
                              .text(ele.class)
                oWrapper.append(oCloneDom);
            })
    
        </script>

    .data( )

    data跟dom 有映射但是不是直接操作dom,所以效率更高  (attr就需要dom操作)

    jQuery中一般用data ,比attr和prop更高效,省去dom操作

  • 相关阅读:
    spring data jpa 自定义sql 左链接查询
    添加用户具有root权限
    windows rabbitmq 安装
    mongodb 启动
    windows 下杀死tomcat进程
    配置ZooKeeper集群11
    配置ZooKeeper集群
    jquery 上传回显图片预览
    Python internals: Symbol tables, part 1(转)
    Python 学习笔记
  • 原文地址:https://www.cnblogs.com/tianya-guoke/p/10542147.html
Copyright © 2011-2022 走看看