gpt4 book ai didi

javascript - 使用 .no-js 类检测 js

转载 作者:数据小太阳 更新时间:2023-10-29 05:48:22 25 4
gpt4 key购买 nike

我一直使用在<html>上有一个.no-js类的方法。标签,然后使用 modernizr 剥离标签并将其替换为 js(如果在用户浏览器中启用了 JavaScript)。

基本上,我已经构建了一个 CSS3 移动和桌面导航。如果有 CSS 转换等(使用 modernizr 检查)以及是否有 js 或 no-js,我有改变其行为的样式。

问题是,在 JavaScript 有时间加载并将类更改为 js 之前,我看到了非 js 版本。 (因为默认类是no-js)

我想不通的是如何找到解决这个问题的办法。如果我将 js 特定代码作为主类,然后指定另一个带有前缀 .no-js 的代码,即使启用了 js,它也会闪烁 no-js。如果我切换它,它会做同样的事情......

也许我是愚蠢的,但任何指示都会很棒。

最佳答案

Paul Irish 有一个 excellent blog post关于处理这个问题。这是该帖子的解决方案:

<!DOCTYPE html>
<html lang='en' class='no-js'>
<head>
<script>(function(H){H.className=H.className.replace(/\bno-js\b/,'js')})(document.documentElement)</script>
...

关键是要确保在浏览器有机会呈现任何内容之前更新类名。

关于javascript - 使用 .no-js 类检测 js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15835441/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com