成品图如下所示:

搭建HTML+CSS结构

    <style>
/* 给tpl设置为不可见,因为我们不需要用到他,我们只是要克隆他身上的东西,克隆完就把他删掉。就跟渣男一样!!!*/
.tpl{
display: none;
}
</style>
</head>
<body>
<div class="wrapper">
<div class='tpl'>
<p></p>
<span></span>
<span></span>
<button>add</button>
</div>
<p class="show">
<span>sum</span>
<span class="sum">0</span>
</p>
</div>
<script src="../jq/jquery-3.3.1/jquery-3.3.1.js"></script>
引入jQuery文件

开始写JS代码

        //模拟后端穿过来的数据
var shopArr = [
{
name : 'james',
shopName : 'nike',
price : 110,
id : '1001'
},{
name : 'kobe',
shopName : 'adidas',
price : 130,
id : '1002'
},{
name : 'curry',
shopName : 'Under Armour',
price : 100,
id : '1003'
},{
name : 'davis',
shopName : 'lining',
price : 90,
id : '1004'
}
];
shopArr.forEach(function (ele, index){ //循环数据
var ocloneDom = $('.tpl').clone().removeClass('tpl'); //获取类名为tpl的元素,克隆里面所有元素,然后删除自己的类名
ocloneDom.data({ //传入数据
shopName : ele.shopName,
price : ele.price,
id : ele.id
}).find('p') //获取克隆后元素里面的P标签
.text(ele.name) //付上文本 = name(名称)
.next() //获取下一个标签
.text(ele.price); //附上文本 = price(价格)
ocloneDom.insertBefore('.show'); //把获取的元素还有样式放在类名为show的标签上方
})
$('.wrapper button').click(function(){ //点击button
$('.sum').text( +$('.sum').text() + $(this).parent().data('price') );
//不方便用文字表达,请看图(点击图)
})

点击图     ↓

谢谢观看,如有大佬路过请指出观点!!!    谢谢观看,如有大佬路过请指出观点!!!  谢谢观看,如有大佬路过请指出观点!!!

jQuery笔记之data方法的更多相关文章

  1. HTML5中的data-*属性和jQuery中的.data()方法使用

    原文地址链接:http://blog.csdn.net/fly_zxy/article/details/50687691: HTML5中的data-*属性 我们往往会根据需要在HTML标记上添加自定义 ...

  2. jQuery中使用data()方法读取HTML5自定义属性data-*实例

    如果你使用jQuery类库,那么你可以非常愉悦的使用jquery的data()方法存取data-* 自定义属性,方法允许我们在DOM元素上绑定任意类型的数据,避免了循环引用的内存泄漏风险 主要的方法如 ...

  3. jQuery中的data方法:

    向元素附加数据,然后取回该数据: $("#btn1").click(function(){ $("div").data("greeting" ...

  4. jQuery笔记之工具方法—Ajax 优化回调地狱

    在上一篇文我们说到了回调地狱不好的地方,今天我们看看怎么来优化它,让它可以运用到实际开发中. 什么是回调地狱?回调地狱就是一个函数里面嵌套了所有功能函数,然后缩略图形成一个三角形. 这样的代码可复用性 ...

  5. jQuery笔记之工具方法—高级方法Ajax

    $.ajxa() ——基本使用 前提:先了解js的执行机制 $.Callbacks()——回调 $.Deferred()——异步 $.when() 网络服务器链接由<渡一教育>提供 --- ...

  6. jQuery笔记之工具方法extend插件扩展

    jQuery工具方法 $.extend()插件扩展(工具方法) $.fn.extend()插件扩展(实例方法) 浅度克隆.深度克隆 两个方法基本是一样的,唯一不同的就是调用方式不一样 -------- ...

  7. jQuery笔记之工具方法

    jQuery 工具方法 $.type()判断数据类型 $.isArray() $.isFunction() $.isWindow()... $.trim()消除空格 $.proxy()改变this指向 ...

  8. jQuery 第四章 实例方法 DOM操作之data方法

    jquery 里面 的 data 方法比较重要, 所以成一个模块写: 首先, 得知道 data()  干嘛用的, 看淘宝上 有自定义的属性, 为data -  什么什么,   这是为了dom 跟数据有 ...

  9. jQuery笔记之 Ajax回调地狱

    本次演示回调地狱: 模拟电影网站,判断用户是否为该网址的vip用户(最高权限为vip) 如果vpi就展示出vip电影,点击相应的电影显示出该电影的详细介绍 ---------------------- ...

随机推荐

  1. java基础 3 Object通用方法(1)

    Object通用方法(1) clone: 浅复制    被复制对象的所有变量都含有与原对象相同的值,而所有对其他对象的引用仍然指向原来的对象,换言之,浅复制仅仅复                   ...

  2. Robot Framework操作

    Robot Framework 介绍 RobotFramework是一款基于python的开源自动化测试框架,遵守Apache License 2.0协议,在此协议下所有人都可以免费开发和使用.因为R ...

  3. HTTP错误 404.17 - Not Found" IIS 7.5

    出现这种情况的原因通常是因为先安装了Framework,后安装的IIS: 运行cmd,输入: C:\Windows\Microsoft.NET\Framework\V4.0.30319\aspnet_ ...

  4. STL源代码剖析——STL算法之set集合算法

    前言 本节介绍set集合的相关算法,各自是并集set_union,差集set_difference,交集set_intersection 和对称差集set_symmetric_difference.这 ...

  5. SQLServer导出单表数据

    采用生成脚本---仅数据..   如果是部分数据,可以先把部分数据备份到一个表中 select * into .. from ...

  6. 哨兵和docker容器

    1,redis哨兵的配置 redis-6379配置文件内容如下 cat redis-6379.conf port 6379 daemonize yes logfile "6379.log&q ...

  7. 2016-2017 ACM-ICPC Southwestern European Regional Programming Contest (SWERC 2016) D.Dinner Bet 概率DP+排列组合

    题目链接:点这里 题意: 1~N标号的球 现在A有C个,B有C个 每次可以随机得到D个不同的球(1~N);问你A或B中的C个球都出现一次的 期望次数 题解: dp[i][j][k]表示 随机出现了i个 ...

  8. Dos下同时执行多条命令简化操作

    起因,要查询8080端口被哪些程序占用了,但是直接在cmd netstat –ano 的话 一下子一大把数据出来了不利于查找, 于是就想起dos下可以同时指向多条命令,如是写下如下命令: netsta ...

  9. C项目实践--图书管理系统(3)

    接下来将要实现用户管理模块的相关功能,用户管理模块的主要功能包括增加用户,查找用户以及保存用户等功能,查找用户时,如果查找成功,充许对查找到用户进行更新或删除操作.如果查找不成功,则给出相应的提示信息 ...

  10. css3动画应用-音乐唱片旋转播放特效

    css3动画应用-音乐唱片旋转播放特效 核心点: 1.设置图片为圆形居中,使图片一直不停旋转. 2.文字标题(潘玮柏--反转地球)一直从左到右不停循环移动. 3.点击图标,音乐暂停,图片停止旋转:点击 ...