javascript - 关于页面初始化请求数据的问题
黄舟
黄舟 2017-04-11 11:59:59
[JavaScript讨论组]

是这样的,现在在做一个旧系统的改造,jsp的,现在要分离。

业务需要动态的配置页面的一些信息,比如颜色等。

之前的做法是ajax从服务器请求相关css文件插入到页面中,但是网络环境不好的话,就会出现较长时间的白屏,还会有闪烁的情况,因为是后插入的样式覆盖之前的样式,就会出现蓝色一闪变成黄色的情况,体验不好。

所以,抛出的问题是:

如果页面(组件)初始化时,需要ajax获取数据,那代码应该写在哪里?

期待各位的精彩回答。

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(3)
天蓬老师

给出几点建议:
1.从后台读取的配置进行样式渲染的时候,可以做过渡切换,就是样式切换的时候采用animation动画效果,比如3秒之内从蓝色切换到黄色,这样从效果上也会更好。
2.加一个loading页面,这个页面就是用过做你后台读取字段时间的过滤,如果检测到后台数据已经读取,并且页面渲染完成,那么把loading页面隐藏掉(loading页面可以是一个p浮动在最上面)
3.采用html5的页面可见性接口,读取到后台配置数据时,不要急于切换样式,检查到用户调到别的页面时,在动态的切换样式,并将配置缓存在本地。用户切回页面时,就会发现样式已更新

天蓬老师

看了相关的颜色配置信息,之后发现其实要设置的不多。
最后用的办法是,后台把要配置的颜色信息放在url里,我拿到之后,直接加到html标签里,对应的颜色配置就写到公共的样式文件里。这样就避免了一次额外的请求,也不会出现闪烁。可维护性也比较好。

大家讲道理
  beforeSend: function () {
            $("#load").show();
        },
        success: function (data) {
            if(data.status=="success"){
              $("#load").hide();
            }
        }
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号