zoukankan      html  css  js  c++  java
  • jQuery的属性与样式之元素的数据存储

    uery提供的存储接口

    jQuery.data( element, key, value )   //静态接口,存数据
    jQuery.data( element, key )  //静态接口,取数据   
    .data( key, value ) //实例接口,存数据
    .data( key ) //实例接口,存数据

    2个方法在使用上存取都是通一个接口,传递元素,键值数据。在jQuery的官方文档中,建议用.data()方法来代替。

    我们把DOM可以看作一个对象,那么我们往对象上是可以存在基本类型,引用类型的数据的,但是这里会引发一个问题,可能会存在循环引用的内存泄漏风险

    通过jQuery提供的数据接口,就很好的处理了这个问题了,我们不需要关心它底层是如何实现,只需要按照对应的data方法使用就行了

    同样的也提供2个对应的删除接口,使用上与data方法其实是一致的,只不过是一个是增加一个是删除罢了

    jQuery.removeData( element [, name ] )
    .removeData( [name ] )


    <!DOCTYPE html>
    <html>
    
    <head>
        <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
        <title></title>
        <style>
        .left,
        .right {
            width: 300px;
            height: 120px;
        }
        
        .left div,
        .right div {
            width: 100px;
            height: 90px;
            padding: 5px;
            margin: 5px;
            float: left;
            border: 1px solid #ccc;
        }
        
        .left div {
            background: #bbffaa;
        }
        
        .right div {
            background: yellow;
        }
        </style>
        <script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script>
    </head>
    
    <body>
        <h2>jQuery.data()静态方法</h2>
        <div class="left">
            <div class="aaron">
                <p>点击看结果</p>
                <p>jQuery.data</p>
            </div>
            <div><span></span></div>
        </div>
        <h2>.data()实例方法</h2>
        <div class="right">
            <div class="aaron">
                <p>点击看结果</p>
                <p>.data</p>
            </div>
            <div><span></span></div>
        </div>
        <script type="text/javascript">
        $('.left').click(function() {
            var ele = $(this);
            //通过$.data方式设置数据
            $.data(ele, "a", "data test")
            $.data(ele, "b", {
                name : "慕课网"
            })
            //通过$.data方式取出数据
            var reset = $.data(ele, "a") + "</br>" + $.data(ele, "b").name
            ele.find('span').append(reset)
        })
        </script>
        <script type="text/javascript">
        $('.right').click(function() {
            var ele = $(this);
            //通过.data方式设置数据
            ele.data("a", "data test")
            ele.data("b", {
                name: "慕课网"
            })
            //通过.data方式取出数据
            var reset = ele.data("a") + "</br>" + ele.data("b").name
            ele.find('span').append(reset)
        })
        </script>
    </body>
    
    </html>
  • 相关阅读:
    [NOI2004] 郁闷的出纳员
    对象内部套嵌多个对象
    函数
    匿名函数、对象
    函数部分
    Html部分
    搜索二叉树的应用
    二叉树的线索化
    搜索结构搜索二叉树
    堆与最优级队列
  • 原文地址:https://www.cnblogs.com/diaoniwa/p/6617537.html
Copyright © 2011-2022 走看看