javascript - 如何以有效的方式添加非标准属性

标签 javascript html validation w3c-validation

有没有办法让非标准属性像

onselectstart
oncontextmenu 
...

在标签中,仍然以某种方式通过 HTML 4.01 过渡验证?

除了稍后使用 Javascript 添加属性。

最佳答案

虽然您不能在 HTML 4.01 中添加自己的标签或属性,但一种常见的技术是使用标准 HTML 标签或属性来包含您的信息,即使根据规范这不是完全正确的用法。例如,'class' 属性几乎可以存储任何类型的数据:

<a href="#" id="user-link-1" class="username:matt email:matt@example.com">Matt</a>

您可以检索上面链接的类并将“类”属性拆分以检索您的数据。

我见过的一些用于自定义数据的其他标签和属性:<script>具有非 JavaScript“类型”值、隐藏输入值、各种标签上的“标题”属性的标签。

如果您不介意从 HTML 4 更改,您还有几个其他选项:

您还可以通过 JavaScript 在运行时向您的 HTML 文档添加自定义属性。例如:

var body = document.getElementsByTagName("body")[0];
body["my-attribute"] = "Hello, world!";
alert(body["my-attribute"]);

如果您的信息是动态的并且根本不需要存储在标记中,这会很有帮助。

关于javascript - 如何以有效的方式添加非标准属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1785675/

相关文章:

.net - .NET 中的代码约定、测试、断言和异常,何时使用?

SilverLight 需要日期选择器验证

javascript - 如何解决不匹配的匿名 define() 模块?

javascript - Bootstrap 的 jQuery 链接

javascript - Angular-Meteor mongo 数据未渲染

css - 为什么ul对齐到底部

javascript - 嵌套 div 上的 jQuery click()

javascript - 绝对定位时div消失,父级动态高度

javascript - HTML5 本地存储回退

javascript - 确定当前浏览器是否支持 `&lt;input type="email"..`(例如)的最简单方法是什么?