【问题标题】:How to apply CSS changes dynamically before pages load如何在页面加载之前动态应用 CSS 更改
【发布时间】:2018-09-20 13:44:14
【问题描述】:

我将外部 javascript 中的外部 css 从另一个来源动态加载到我的网站,这会将我的网页更新为新的 css 设计。

var link = document.createElement( "script" ); link.src = "http://externalsourcee.com/page/js/generate?token=I-css76theme"; document.getElementsByTagName( "head" )[0].appendChild( link );

问题:我的css更新的网页先显示然后更改设计,所以用户会看到滞后。

我的问题:如何确保用户看不到任何更改发生,用户只会在页面加载后看到设计,或者如果必须存在延迟,那么我们可以插入加载屏幕,以便访问者看到进度,当 css 更新时。

警告:我无法编辑 html 文件,我只能通过从外部加载 javascript 来对其进行更改。

【问题讨论】:

  • 通常您会使用 CSS 规则制作所有内容 visibility: hidden;,但如果您无法更改来源,那您就不走运了。
  • 是否可以选择在整个页面前面加上颜色或文字div?你在开始时.show()它。完成后你 .hide() 它。
  • @Sparky,这会动态工作吗?记得我只能通过插入 div、其他 html 元素和仅使用 javascript 的脚本来编辑页面。动态插入div会不会显示滞后?
  • 您在这里遇到了一个有趣的问题。我会关注答案和cmets。

标签: javascript html css ajax


【解决方案1】:

您可以使用 setTimeout 函数来加载另一个 css。

您也可以为用户设置请等待使用 javascript 和 css,以便他们可以等待 util 设计更新。

希望对你有帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-31
    • 2020-10-13
    • 1970-01-01
    • 2021-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多