动态分配数据角色属性
Dynamically assigning data-role attributes
我想我可以在调用jQuery Mobile的JavaScript之前添加这个:
$('section').data('role','page');
$('article').data('role','content');
这样我就可以在我的HTML中简单地使用<section>
和<article>
标签,而不是指定<div data-role="page">
和<div data-role="content">
。
但我认为它不起作用
你可以这样做:
$('section').attr('data-role','page');
$('article').attr('data-role','content');
试试这个:
:
<script src="jquery.js"></script>
<script src="YOUR-SCRIPT.js"></script>
<script src="jquery-mobile.js"></script>
$(document).bind("mobileinit", function(){
$('section').data('role','page');
$('article').data('role','content');
/* OR */
$('section').attr('data-role','page');
$('article').attr('data-role','content');
});
参考:http://jquerymobile.com/demos/1.2.1/docs/api/globalconfig.html
为什么需要"data-"属性?http://api.jquery.com/data/它们可能导致内存泄漏以及其他问题。jQuery已经有一个内置的"数据",它正在工作。它不设置数据属性,它使用了一种更好、更有效的方法来用JavaScript存储与DOM选择器相关的数据。
如果你因为某些原因没有内置'data',你应该更新jQuery。这是一个衬垫,主要是为了让你看看它是如何工作的。它不是一个完整的组合,它只是一种非常简单的方法,使用数据键的元素的选择器来存储数据。当元素被删除时,我没有删除数据,所以我的实现可能会导致内存泄漏。这只是一个例子。
if ($(window).data === undefined) {
$.fn.data = (function () {
var storage = {};
return function data (name, val) {
var id = $(this).selector;
storage[id] = storage[id] || {};
if (val === void 0) {
return storage[id][name];
}
storage[id][name] = val;
return $(this);
}
}());
}
var foo = $('section').data('role','page');
var bar = $('article').data('role','content');
foo.text(foo.data('role'));
bar.text(bar.data('role'));
http://jsfiddle.net/dETuh/1/注意警报没有运行,所以我的shim甚至没有被使用。
if ($(window).data === undefined) {
$.fn.data = (function () {
var storage = {};
return function data (name, val) {
var id = $(this).selector;
storage[id] = storage[id] || {};
if (val === void 0) {
return storage[id][name];
}
storage[id][name] = val;
return $(this);
}
}());
}
var foo = $('section').data('role','page');
var bar = $('article').data('role','content');
foo.text(foo.data('role'));
bar.text(bar.data('role'));
相关文章:
- RegEx删除空属性?例如,如果(class=“”||class=“”)移除;否则就下课
- 全局变量和全局对象的属性之间有什么区别吗
- 如果使用 lodash 将属性存在于另一个对象中,则向对象添加属性
- 如何在Bootstrap Modal中为动态点击生成的变量设置jade属性
- 序列化数据属性中对象的最可靠方法
- 分析高度属性时出现意外值{{specs.height}}.index.html
- TypeError:无法读取属性'推'未定义的JavaScript
- 同样,同样的错误'ahorcado.js:26未捕获类型错误:无法读取属性'beginPath'
- AngularJS-使用'true'属性
- 可以't使用JavaScript获取width属性
- 未捕获的TypeError无法读取未定义的属性socialsharing
- 如何使用javascript获取嵌套对象中所有子对象的单个属性
- JavaScript Pub/Sub属性访问问题
- 从JavaScript访问struts操作中的属性
- 是否可以从父类访问子类的属性
- 如何更改reactjs中外部/独立组件的状态或属性
- 创建一个带有按钮角色的html属性提交表单
- 为什么jQuery Mobile使用数据角色属性而不是类
- 动态分配数据角色属性
- 如何检索页面I'm使用(JQuery's数据角色属性)