《jQuery、jQuery UI及jQuery Mobile技巧与示例》——9.20 技巧:向jQuery Mobile中的DOM结点添加数据

简介: jQuery Mobile提供了该函数的一个变体,即jqmData()。代码清单9-24演示了如何能像使用data()函数一样来使用它。主要的区别是它考虑了命名空间(namespace)。命名空间在jQuery Mobile中很重要,当jQuery Mobile连同其他插件或者外部库一起使用时,它有助于保护该框架不受到影响。

本节书摘来自异步社区《jQuery、jQuery UI及jQuery Mobile技巧与示例》一书中的第9章,第9.20节,作者:【荷】Adriaan de Jonge , 【美】Phil Dutson著,更多章节内容可以访问云栖社区“异步社区”公众号查看

9.20 技巧:向jQuery Mobile中的DOM结点添加数据

jQuery Mobile提供了该函数的一个变体,即jqmData()。代码清单9-24演示了如何能像使用data()函数一样来使用它。主要的区别是它考虑了命名空间(namespace)。命名空间在jQuery Mobile中很重要,当jQuery Mobile连同其他插件或者外部库一起使用时,它有助于保护该框架不受到影响。当使用jQuery Mobile时,jQuery Mobile团队推荐使用jqmData()方法而不是jQuery Core中的data()方法。

代码清单9-24 添加、获取和移除jQuery Mobile中与DOM结点关联的数据

00 <!DOCTYPE html> 
01 <html> 
02 <head> 
03  <title>jQuery Mobile Data Function</title> 
04  <meta name="viewport" 
05    content="width=device-width, initial-scale=1"> 
06  <link rel="stylesheet" href=
07    "http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css">
08  <script type="text/javascript"
09    src="http://code.jquery.com/jquery-1.7.1.min.js">
10  </script>
11  <script type="text/javascript" src=
12    "http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js">
13  </script>
14  <script>
15  $(document).ready(function() {
16   
17    $('#setdata').on('click', function(event) {
18     $('#mydata').jqmData('mykey', 'myvalue');
19    });
20    $('#getdata').on('click', function(event) {
21     alert($('#mydata').jqmData('mykey'));
22    });
23    $('#removedata').on('click', function(event) {
24     $('#mydata').jqmRemoveData('mykey');
25    });
26    $('#select').on('click', function(event) {
27     alert('Number of buttons = ' +
28      $('a:jqmData(role="button")').length);
29    });
30   
31  });
32  </script>
33 </head> 
34 <body> 
35 
36 <div data-role="page">
37 
38  <div data-role="header">
39   <h1>jQuery Mobile Data Function</h1>
40  </div>
41 
42  <div data-role="content"> 
43   <p id="mydata">This paragraph serves as the data container.</p>
44   <a href="#" id="setdata" data-role="button">Set Data</a>
45   <a href="#" id="getdata" data-role="button">Get Data</a>
46   <a href="#" id="removedata" data-role="button">Remove Data</a>
47   <a href="#" id="select" data-role="button">Select</a>
48  </div>
49 
50 </body>
51 </html>

第18、21和24行演示了如何使用jqmData()函数来保存数据、获取数据和移除数据。如果将这个示例与第1章的示例进行比较,你会发现更多的是相同而不是不同。

与data()函数类似,jqmData函数也是从HTML中读取data-属性。这对于从DOM树中选取某个元素来说尤其有用。第28行显示了如何在CSS选择器中使用jqmData()函数。这比`$('a:data-role="button")多了些许代码。作为回报,这里的代码确保考虑了命名空间。

你可以使用$.mobile.ns配置选项来更改命名空间。如果把命名空间设置为myns,需要设置按钮角色的属性名称为data-myns-role。

相关文章
|
3月前
|
前端开发
Element UI 【实战】纯前端对表格数据进行增删改查(内含弹窗表单、数据校验、时间日期格式)
Element UI 【实战】纯前端对表格数据进行增删改查(内含弹窗表单、数据校验、时间日期格式)
126 6
|
8天前
|
JavaScript 前端开发
jQuery 操作 DOM 及 CSS
本文介绍了如何使用jQuery进行DOM操作和CSS样式的修改,包括如何获取和设置元素的文本内容、属性值、添加和删除元素,以及如何使用jQuery的addClass、removeClass、toggleClass、hasClass和css方法来操作元素的CSS。通过示例代码,展示了jQuery在实际开发中的便捷性。
jQuery 操作 DOM 及 CSS
|
7天前
|
JSON JavaScript 前端开发
Jquery常用操作汇总,dom操作,ajax请求
本文汇总了jQuery的一些常用操作,包括DOM元素的选择、添加、移除,表单操作,以及如何使用jQuery发送Ajax请求,涵盖了GET、POST请求和文件上传等常见场景。
|
2月前
|
前端开发 JavaScript UED
element-ui 表格数据究竟隐藏着怎样的神秘样式与格式化技巧?快来揭开谜底!
【8月更文挑战第22天】《element-ui 表格数据样式及格式化案例》展示了如何利用 element-ui 的表格组件实现美观且易读的数据展示。通过简单配置,可以自定义表格样式,如边框、背景色等,并通过 formatter 实现数据格式化,例如将成绩保留一位小数。此外,还能依据条件设置行样式,如成绩达优则高亮显示,从而增强用户体验和数据可读性。
52 1
|
2月前
|
数据采集 JavaScript 数据挖掘
如何使用 PHP Simple HTML DOM Parser 轻松获取网页中的特定数据
本文介绍了使用PHP Simple HTML DOM Parser进行网页数据抓取的方法,尤其适用于从懂车帝二手车网站提取汽车品牌、价格和里程等关键信息。首先,安装并配置所需库,使用代理IP和设置cookie与useragent来模拟用户行为,避免被封。然后,通过编写PHP脚本,利用cURL获取网页内容,解析HTML并提取所需数据,最终将数据保存至CSV文件。文章强调了正确配置代理和用户代理的重要性,并提供了完整的PHP代码示例,以帮助读者理解和应用网页抓取技术。
如何使用 PHP Simple HTML DOM Parser 轻松获取网页中的特定数据
|
2月前
|
JSON JavaScript 数据格式
Jquery 将 JSON 列表的 某个属性值,添加到数组中,并判断一个值,在不在数据中
Jquery 将 JSON 列表的 某个属性值,添加到数组中,并判断一个值,在不在数据中
58 0
|
3月前
Element UI【级联选择器】el-cascader 获取选中内容的 label 数据,鼠标悬浮显示超长内容
Element UI【级联选择器】el-cascader 获取选中内容的 label 数据,鼠标悬浮显示超长内容
351 3
|
3月前
Element UI 多选表格--判断勾选数据行的 Checkbox 时为选中还是取消选中
Element UI 多选表格--判断勾选数据行的 Checkbox 时为选中还是取消选中
31 1
|
3月前
Element UI 多选表格【翻页多选】简易版(不支持翻页多选数据反显)
Element UI 多选表格【翻页多选】简易版(不支持翻页多选数据反显)
53 0
Element UI 多选表格【翻页多选】简易版(不支持翻页多选数据反显)
|
3月前
软件研发核心问题之在需求拆解过程中,“数据与UI如何关联”的问题如何解决
软件研发核心问题之在需求拆解过程中,“数据与UI如何关联”的问题如何解决