在noscript中重复id

Pau*_*aul 7 html javascript dom

启用Javascript时,以下HTML/Javascript是否有效(严格)?是否忽略了noscipt标记中的id?

<body>
    <noscript>
        <div id="test"></div>
    </noscript>
    <script type="text/Javascript">
        var el = document.createElement('span');
        el.id = 'test';
        document.body.appendChild(el);
    </script>
</body>
Run Code Online (Sandbox Code Playgroud)

Mik*_*uel 10

启用javascript时,内容<noscript>原始文本,而不是元素内容,因此元素的子<noscript>元素是具有值"\n <div id="test"></div>\n"而不是DIV元素的文本节点.A getElementById("test")将找不到<div>具有ID的ID,"test"因为没有这样的元素,只有一个文本节点,如果它出现在原始文本上下文之外,其内容将解析为DIV.

http://www.w3.org/TR/html5/scripting-1.html#the-noscript-element

头元素之外,如果脚本为启用noscript元素
noscript元素必须只包含文本...