JQuery奇怪的属性

时间:2015-01-23 17:20:40

标签: jquery html css dom

我有一段代码使用了一个我无法识别的奇怪选择器:

$("div[tag=" + someVariable + "]").css("display", "block");

就我而言,选择器会查找具有名为div的属性的tag元素,其值等于someVariable

tag属性是什么?很多谷歌搜索没有给我任何指示。

编辑:以下行是:

$("div[tag=" + someVariable+ "]").addClass("someClass");

这段代码是否可以创建带有自定义属性的div,然后将其添加到页面中?

2 个答案:

答案 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中正式使用的标记。