例如,假设您有这样的事情:
<div data-object="{'str': '<h1>This is a nice headline</h1>'}"></div>
这在 HTML5 中是否允许,它会在所有浏览器中正确呈现吗?
编辑:正确的意思是浏览器将忽略并且不会以任何方式呈现 H1 ;)
例如,假设您有这样的事情:
<div data-object="{'str': '<h1>This is a nice headline</h1>'}"></div>
这在 HTML5 中是否允许,它会在所有浏览器中正确呈现吗?
编辑:正确的意思是浏览器将忽略并且不会以任何方式呈现 H1 ;)
是的,只要引用正确,就可以。
会渲染吗?H1元素?不——因为它不是一个元素,它只是 div 元素的一个属性内的一些文本。
是的,浏览器不会在属性内呈现任何 HTML 标签。当您想稍后移动元素以使其显示时,这很常见。唯一的问题是这不是一种方法,因为它不会在 DOM 中创建元素,因此它会慢得多。
尝试找到一种方法或要求另一种/更好的方法来重用页面加载时隐藏的元素。
是的,这是允许和可能的,但要使其工作,您必须使用双引号使其有效 JSON:
<div data-object='{"str": "<h1>This is a nice headline</h1>"}'></div>
现在解析它:(jQuery 将自己解析为 JSON)
var element = $("div").eq(0);
var rawData = element.data("object");
var rawHTML = rawData["str"];
$(rawHTML).appendTo("body");