我有一段代码使用了一个我无法识别的奇怪选择器:
$("div[tag=" + someVariable + "]").css("display", "block");
就我而言,选择器会查找具有名为div
的属性的tag
元素,其值等于someVariable
。
tag
属性是什么?很多谷歌搜索没有给我任何指示。
编辑:以下行是:
$("div[tag=" + someVariable+ "]").addClass("someClass");
这段代码是否可以创建带有自定义属性的div
,然后将其添加到页面中?
答案 0 :(得分:2)
虽然与HTML规范不一致,但大多数浏览器对自定义属性没有任何限制。
创建此文件的人的HTML格式如下:
<div tag="something">
HTML5,虽然尚未正式发布(HTML5.0已达到&#34;推荐&#34; 2014年10月的状态),支持自定义标签的概念,预先挂起&# 34;数据 - &#34; (read more)。所以,从技术上讲,它应该写成:
<div data-tag="something">
和
$("div[data-tag=" + someVariable + "]")
答案 1 :(得分:1)
您可以为您的属性使用任何名称,甚至可以将其称为somereallystrangename
- 虽然它不会被建议,也不会通过任何验证。共识是使用data-{tag}
作为您自己定义的属性。但是没有什么可以阻止你(或编写你的脚本的人)使用tag
作为属性名称。但Tag
不是HTML中正式使用的标记。