问题标签 [custom-data-attribute]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
18406 浏览

jquery - 隐藏输入与 HTML5 数据属性

最近困扰我的事情是HTML5 数据属性的使用以及何时适合使用它们。

通常,在对我的服务器执行多个 AJAX 调用的页面上,我需要ID代表正在查看的页面的那个。我目前一直将它存储在<input>页面上的一个隐藏元素中,然后访问它并将其存储在我的 jQuery doc 就绪调用顶部的 JS 变量中。

我一直在考虑将它移动到data-idbody 元素上的一个属性,然后我将在 jQuery 中使用$('body').data('id');.

使用 HTML5 数据属性有什么好处,反之亦然?表现?安全?“最佳实践”?

据我了解,所有浏览器都可以访问数据属性,因此无需担心处理 IE。

0 投票
3 回答
327 浏览

javascript - element.attributes 是否包含自定义数据属性?

我想知道是否存在浏览器一致性,哪些元素存储在属性数组中。

是否通过“$('#elm')[0].attributes”找到所有“data-xxx”属性?

例如,属性集合是否包含以下所有数据属性:

我需要的是一种使用 jQuery 将所有相关属性从 input[type=submit] 移动到按钮元素的方法。

0 投票
0 回答
1872 浏览

html - HTML 数据属性对于旧浏览器(例如 IE 6)是否安全?

可能重复:
HTML5 自定义数据属性在 IE 6 中是否“有效”?

使用 HTML 数据属性是否安全。

例如,如果用户使用 IE6 作为浏览器,我仍然可以使用该属性并使用 javascript 检索它吗?

0 投票
2 回答
1488 浏览

jquery - 使用 .data() 检索 data-* 属性的值是个好主意吗?

在我的项目中,我目前在我的 HTML 中使用一些自定义 data-* 属性来传达一些将由 jQuery 使用的额外数据。我找到了该.data()方法并注意到如果我有一个 data-* 属性data-my-attribute,我可以通过选择具有该属性的元素并调用.data("my-attribute").

我认为这是应该使用的方式(没有查看文档)并在我的 jQuery 代码中使用它。但是,现在我注意到,例如,当我"000005643"在 HTML data-* 属性中放置一个字符串时,.data("my-attribute")return 5643while .attr("data-my-attribute")return "000005643"。后者是我想要的。这导致我查找文档,实际上发现.data()比我想象的要多。此外,我从未见过任何文本或示例表明您应该使用它.data()来检索 data-* 属性的值。这让我担心我在做一些根本错误的事情。

那么我应该停止并停止以.data()这种方式使用吗?如果没有,您能否将我链接到有关.data()解释此用途的功能的一些文档。

0 投票
1 回答
527 浏览

html - 非附属 HTML5 数据属性的占位符元素?

我有一小组结构化数据项,我想将它们嵌入到 HTML 文档中。一些 JavaScript 使用这些数据与页面交互,但在其他方面是隐藏的。

我考虑过使用 HTML5 数据属性,但我不确定哪个元素最适合附加杂散数据。我想过使用div元素,如下所示:

这是一个杂项,因为div元素的内容模型是流内容,它推荐至少一个后代。我也考虑过使用无序列表,但这也是出于同样的原因,因为li元素的内容模型也是流内容。

我搜索了有关 HTML5 数据属性的最佳实践,但由于这些属性相对较新且尚未普遍使用,因此可用的信息很少。

对于附加杂散数据属性的占位符元素还有其他建议吗?还是我对这一切都错了?对于我的需求,使用 JSON 之类的东西似乎很繁重......

0 投票
1 回答
804 浏览

javascript - 从元素中检索所有 data-* 属性

可能重复:
使用 javascript / jQuery 获取 data-* 属性列表

您将如何从元素中检索所有数据属性,并将它们放入数组中?

例如,如果我有一个列表元素:

我希望能够获取所有这些数据属性并最终得到这样的数组或对象(或类似的东西):

首选您不知道数据属性名称的解决方案。

0 投票
3 回答
23058 浏览

jquery - jQuery - 如何将 HTML 5 数据属性添加到 DOM

我正在尝试将 HTML 5 数据属性添加到 DOM 中。我在 jQuery 网站上看到数据属性的格式是:

但这似乎并没有在 DOM 中添加任何内容?

如何将上述数据角色添加到相关的 ul 标签中?

0 投票
3 回答
350 浏览

jquery - 仅在 html 中定义的 jQuery 切换文本

这已经被回答了几次,但我的方法不同。

我想在点击时切换(通过 jQuery)文本。但是我想在 html 中定义这个文本(因为它是多语言并且它依赖于语言,更准确地说是在 Smarty 变量中)所以$(this).html(condition ? "Some" : "Other" )它不起作用。

我的实际做法是:

HTML

JS

但我不太喜欢代码的冗余和rel属性的不当使用。我确信有更多jquery风格的解决方案。

谢谢阅读。

0 投票
2 回答
5427 浏览

html - 使用自定义数据属性会产生浏览器兼容性问题吗?

我必须在自定义数据标签或 ID 之间进行选择。我想选择自定义数据标签,但我想确保它们不会导致当今最广泛使用的浏览器出现浏览器兼容性问题。

我正在使用 jQuery 1.6,我的特定场景涉及我需要为多个操作引用 commentId 的情况。

在 jQueryin 中提取数据标签更容易:$('foo').data('commentId');

从 id 中提取子字符串似乎有点复杂,并且可能由于某种原因而中断:<a id="comment-1"

这两种方法是否有任何普遍的优点或致命的缺陷?

0 投票
1 回答
1900 浏览

html - 在 Modernizr 中检测 HTML5 数据属性

如何data使用 Modernizr 检测浏览器是否支持 HTML5 属性?