添加或删除类以进行逐步增强的最佳方法是什么?

时间:2019-01-04 13:01:52

标签: javascript html responsive-design progressive-enhancement

我正在一个使用最少JS的网站上工作,主要是用于切换移动设备上的菜单。

如果禁用js,我希望该站点仍可导航。我已经提出了两种可行的解决方案,但是我想知道一种解决方案是否比另一种更好,或者我应该做些完全不同的事情。

哪个更好?

示例A

<body>
 <noscript>
  <div class="no-js">
 </noscript>
 ... stuff here ...
 <noscript>
    </div>
</noscript>

示例B

<body id="body" class="body no-js">
 ... stuff here ...
<script>document.getElementById("body").classList.remove("no-js");</script>
</body>

1 个答案:

答案 0 :(得分:1)

示例A是无效的HTML。

HTML必须按照严格的层次结构进行排列。

一个元素(例如您的<div>)不能作为一个元素(例如您的<noscript>)的子元素开始,而在同一<noscript>中也没有匹配的结束标记)。

在取消选项A的情况下,仅保留选项B。