我下载了一个主题,它可以在离线状态下完美运行。但是当我将相同的内容上传到 Web 服务器时,它却无法运行。页面似乎是空白的。主题基于 DOM
<script>
//* hide all elements & show preloader
document.documentElement.className += 'js';
</script>
<script>
$(document).ready(function() {
//* show all elements & remove preloader
setTimeout('$("html").removeClass("js")',1000);
});
</script>
这不会向 body 添加类;它会向根元素(即“html”标签)添加类…
已修复。
此代码的 jQuery 版本(虽然您并不真正需要它,但如果您正在使用它)是
$("body").addClass("js");
我总是将其放在最上面,与其他通用代码一起。我通常也使用“has-js”类,因为两个字母的类名让我感到不安(插件或其他),并且它更有意义一些。
这段代码的目的是尽可能快。它应该作为纯 JavaScript 代码片段放置在 head 元素中 CSS 文件的正下方。您需要在关闭 body 标签之前,在文档底部加载 jQuery,因为下载 JavaScript 文件会阻止页面呈现。
我个人使用以下代码片段
它将在 HTML 元素上将“no-js”类替换为“js”类,同时保留可能存在的其他所有类名。
实际上,这不像其他示例那样有效。
您必须先下载 jQuery(以及可能的所有 CSS 和图像),然后才能添加类名。
这会导致在 jQuery 命令启动并触发 CSS 之前,偶尔出现 no-js 内容的闪烁。
此方法最好作为单独的 JS 代码片段,放置在页面标题之后以及 CSS 之前
<script type=”text/javascript”>/<![CDATA[/document.documentElement.className=”hasJS”;/]]>/</script>
在过去 6 年多的时间里,它对我来说非常有效。
我还有一个技巧要告诉大家;除了向 body 添加此类之外,我还删除了 body 标签中已有的类。因此,没有 JS 的用户将获得
<body class="xhtml">
而启用了 JS 的用户将获得
<body class="js">
(…通过删除“xhtml”类并添加“js”类)
= 通过在 body 标签中设置默认类,可以更轻松地进行“加载时闪烁”修复,例如用 Flash 内容替换链接时,此外,我发现它简化并美化了 CSS。;
我经常使用它来打开所有隐藏菜单,并在启用 js 时折叠它们。
我使用了文章中概述的技术,但建议在类名前添加一个空格,如下所示:“ js”。这样,如果已经存在任何类,它就会很容易地附加到类字符串中,否则,空格将被忽略。
我下载了一个主题,它可以在离线状态下完美运行。但是当我将相同的内容上传到 Web 服务器时,它却无法运行。页面似乎是空白的。主题基于 DOM
你能帮我解决这个问题吗?
document.documentElement.className += ‘ js ‘; // 注意:’[空格]js[空格]’