精华内容
下载资源
问答
  • 初始化加载

    2016-08-22 19:17:08
    初始化加载一:jquery 和 js 初始化加载的区别一般情况一个页面响应加载的顺序是,域名解析-加载html-加载js和css-加载图片等其他信息。js (Dom Load):指示页面包含图片等文件在内的所有元素(整个document文档)...

    初始化加载

    一:jquery 和 js 初始化加载的区别

    一般情况一个页面响应加载的顺序是,域名解析-加载html-加载js和css-加载图片等其他信息。


    js (Dom Load):指示页面包含图片等文件在内的所有元素(整个document文档)都加载完成。

    js是页面全部加载完成才执行初始化加载。js中的window.onload是等页面加载完所有的元素,包括图片等等资源要全部加载成功后才执行
    特例

    document.getElementById("imgID").onload=function(){
         //do something
    }

    jquery (Dom Ready):表示文档结构已经加载完成(不包含图片等非文字媒体文件)

    等待页面加载完数据,以及页面部分元素(不包括图片、视频)。在DOM加载完成后就可以可以对DOM进行操作。


    注意:window.onload不能同时编写多个,如果有多个window.onload方法,只会执行一个
    $(document).ready()可以同时编写多个,并且都可以得到执行

    二:js和jquery页面初始化加载函数的方法及先后顺序

    运行下面代码。弹出A、B、C、D、E的顺序:A=B=C>D=E=F。

    <!DOCTYPE html>
    <html>
    <head>
    <title>首页</title>
    <script type="text/javascript" src="js/jquery-1.8.0.min.js"></script>
    <script>
    
    $(function()
    {
        alert("A");
    });
    
    $(document).ready(function(){
        alert("B");
    });
    
    jQuery(function($) {  
        alert("C");  
    });
    
    loads();
    function loads(){
        alert("D");
    };
    
    window.onload=function(){
        alert("E");
    };
    
    $(window).load(function() {
       alert("F");
    });
    
    
    </script>
    <body onload="loads();">
    </body>
    </html>

    三、用$(window).load(function(){...})而不用body.onload()的几个理由

    1、如果我们想同时加载多个函数,我们必须这样写
    <body onload="fn1(),fn2()"></body>看起来极其丑陋,如果用$(window).load()我们可以这样加载多个函数

     $(window).load(function() {
                alert("hello,我是jQuery!");
      });
     $(window).load(function() {
            alert("hello,我也是jQuery");
     });

    2、用body.Onload()不能够做到js和html完全分离,这是一个很严重的问题.

    四、所有DOM元素加载之前执行的jQuery代码

    <script type="text/javascript">
    (function() {
                alert("DOM还没加载哦!");
            })(jQuery)
      </script>

    IE只有在页面不是嵌入frame中的情况下才和Firefox等一样,先执行$(document).ready()的内容,再执行原来的onload方法。对于嵌入frame中的页面,也只是绑定在load事件上执行,所以自然是在原来的onload绑定的方法执行之后才轮到。而这个页面中正好在测试环境下有一个访问不到的资源,那十几秒的延迟正是它放大出的时间差。

    展开全文
  •  在Spring-Cloud-Gateway的GatewayAutoConfiguration初始化加载中会加载RouteDefinitionLocator(路由定义信息加载器)信息。 //初始化配置路由定义加载器 @Bean @ConditionalOnMissingBean public ...

    一、RouteDefinitionLocator

      在Spring-Cloud-Gateway的GatewayAutoConfiguration初始化加载中会加载RouteDefinitionLocator(路由定义信息加载器)信息。

    //初始化配置路由定义加载器
        @Bean
        @ConditionalOnMissingBean
        public PropertiesRouteDefinitionLocator propertiesRouteDefinitionLocator(GatewayProperties properties) {
            return new PropertiesRouteDefinitionLocator(properties);
        }
    
        //初始化存储路由定义加载器
        @Bean
        @ConditionalOnMissingBean(RouteDefinitionRepository.class)
        public InMemoryRouteDefinitionRepository inMemoryRouteDefinitionRepository() {
            return new InMemoryRouteDefinitionRepository();
        }
    
         //初始化聚合路由定义加载器
        @Bean
        @Primary
        public RouteDefinitionLocator routeDefinitionLocator(List<RouteDefinitionLocator> routeDefinitionLocators) {
            return new CompositeRouteDefinitionLocator(Flux.fromIterable(routeDefinitionLocators));
        }

    查看RouteDefinitionLocator源码

    /**
     * 路由定义信息的定位器,
     * 负责读取路由配置( org.springframework.cloud.gateway.route.RouteDefinition
     * 子类实现类
     *  1.CachingRouteDefinitionLocator -RouteDefinitionLocator包装类, 缓存目标RouteDefinitionLocator 为routeDefinitions提供缓存功能
     *  2.CompositeRouteDefinitionLocator -RouteDefinitionLocator包装类,组合多种 RouteDefinitionLocator 的实现,为 routeDefinitions提供统一入口
     *  3.PropertiesRouteDefinitionLocator-从配置文件(GatewayProperties 例如,YML / Properties 等 ) 读取RouteDefinition
     *  4.DiscoveryClientRouteDefinitionLocator-从注册中心( 例如,Eureka / Consul / Zookeeper / Etcd 等 )读取RouteDefinition
     *  5.RouteDefinitionRepository-从存储器( 例如,内存 / Redis / MySQL 等 )读取RouteDefinition
    */ public interface RouteDefinitionLocator { /** * 获取RouteDefinition */ Flux<RouteDefinition> getRouteDefinitions(); }

    RouteDefinitionLocator接口只有一个方法getRouteDefinitions,此方法获取RouteDefinition的核心方法,返回Flux<RouteDefinition>

    1.1、PropertiesRouteDefinitionLocator--从配置文件读取定义定位器

    // 从Properties(GatewayProperties)中加载RouteDefinition信息
    public class PropertiesRouteDefinitionLocator implements RouteDefinitionLocator {
    
        // 从appliccation.yml中解析前缀为spring.cloud.gateway的配置
        private final GatewayProperties properties;
    
        public PropertiesRouteDefinitionLocator(GatewayProperties properties) {
            this.properties = properties;
        }
    
        @Override
        public Flux<RouteDefinition> getRouteDefinitions() {
            return Flux.fromIterable(this.properties.getRoutes());
        }
    }
    • GatewayProperties 在GatewayProperties初始化加载,参看:
    • Flux 响应式编程

    1.2、CachingRouteDefinitionLocator--缓存路由定义定位器

    // RouteDefinitionLocator 包装实现类,实现了路由定义的本地缓存功能
    public class CachingRouteDefinitionLocator implements RouteDefinitionLocator {
    
        //  实际路由定义定位器
        private final RouteDefinitionLocator delegate;
        
        private final Flux<RouteDefinition> routeDefinitions;
    
        // 路由定义的本地缓存
        private final Map<String, List> cache = new HashMap<>();
    
        public CachingRouteDefinitionLocator(RouteDefinitionLocator delegate) {
            this.delegate = delegate;
            routeDefinitions = CacheFlux.lookup(cache, "routeDefs", RouteDefinition.class)
                    .onCacheMissResume(() -> this.delegate.getRouteDefinitions());
    
        }
    }

    1.3、DiscoveryClientRouteDefinitionLocator--配置中心路由定义定位器

    public class DiscoveryClientRouteDefinitionLocator implements RouteDefinitionLocator {
         //* 注册中心客户端
        private final DiscoveryClient discoveryClient;
         //* 本地配置信息
        private final DiscoveryLocatorProperties properties;
         //* 路由ID前缀
        private final String routeIdPrefix;
    
        public DiscoveryClientRouteDefinitionLocator(DiscoveryClient discoveryClient, DiscoveryLocatorProperties properties) {
            this.discoveryClient = discoveryClient;
            this.properties = properties;
            if (StringUtils.hasText(properties.getRouteIdPrefix())) {
                this.routeIdPrefix = properties.getRouteIdPrefix();
            } else {
                this.routeIdPrefix = this.discoveryClient.getClass().getSimpleName() + "_";
            }
        }
    
         //* 通过注册中心查找服务组装路由定义信息
        @Override
        public Flux<RouteDefinition> getRouteDefinitions() {
         //...
        }
    }

    1.4、CompositeRouteDefinitionLocator--各个定位器合并提供统一的getRouteDefinitions方法入口

    // 组合多个 RouteDefinitionLocator 的实现,为 routeDefinitions提供统一入口
    public class CompositeRouteDefinitionLocator implements RouteDefinitionLocator {
    
        /**
         * 所有路由定义定位器实例集合
         */
        private final Flux<RouteDefinitionLocator> delegates;
    
        public CompositeRouteDefinitionLocator(Flux<RouteDefinitionLocator> delegates) {
            this.delegates = delegates;
        }
    
        @Override
        public Flux<RouteDefinition> getRouteDefinitions() {
            //将各个RouteDefinitionLocator的getRouteDefinitions合并返回统一的Flux<RouteDefinition>
            return this.delegates.flatMap(RouteDefinitionLocator::getRouteDefinitions);
        }
    }

    综合上述

    PropertiesRouteDefinitionLocator-->|配置文件加载初始化| 、RouteDefinitionRepository-->|存储器中加载初始化|、DiscoveryClientRouteDefinitionLocator-->|注册中心加载初始化|

    最终提供通过CompositeRouteDefinitionLocator提供统一的getRouteDefinitions方法

    其中GatewayDiscoveryClientAutoConfiguration如下

    @Configuration
    @ConditionalOnProperty(name = "spring.cloud.gateway.enabled", matchIfMissing = true)
    @AutoConfigureBefore(GatewayAutoConfiguration.class)
    @ConditionalOnClass({DispatcherHandler.class, DiscoveryClient.class})
    @EnableConfigurationProperties
    public class GatewayDiscoveryClientAutoConfiguration {
    
        //初始化注册中心路由定义定位器
        @Bean
        @ConditionalOnBean(DiscoveryClient.class)
        @ConditionalOnProperty(name = "spring.cloud.gateway.discovery.locator.enabled")
        public DiscoveryClientRouteDefinitionLocator discoveryClientRouteDefinitionLocator(
                DiscoveryClient discoveryClient, DiscoveryLocatorProperties properties) {
            return new DiscoveryClientRouteDefinitionLocator(discoveryClient, properties);
        }
    }
    展开全文
  • js和jq初始化加载的方式

    千次阅读 2019-05-12 20:31:12
    在body中初始化加载 <body onload="functionName()"></body> <script> function functionName(){ alert("我是在body中初始化加载方法"); } </script> 通过window.onload初始化加载 ...

    一、js初始化加载方式

    • 在body中初始化加载
    <body onload="functionName()"></body>
    <script>
    function functionName(){
      alert("我是在body中初始化加载方法");
    }
    </script>
    • 通过window.onload初始化加载 
    window.onload=function(){
     alert("我是通过window.onload初始化加载")
    }
    • 初始化函数,根据页面加载的顺序执行函数
    <script>
    function ss(){
      alert("我是通过初始化加载函数运行")
    }
    ss();//初始化函数
    </script>

    二、jq初始化方法

    • $(function(){})
    <script>
    $(function(){
      //通过$(function(){})
    })
    </script>
    • $(document).ready(function(){}) 
    <script>
     $(document).ready(function(){
       //通过$(document).ready(function(){})   简写 $(function(){})
    })
    </script>
    • jQuery(function($){})
    <sript>
    jQuery(function($){
    })
    </script>

     

    展开全文
  • vue初始化加载数据报错问题

    千次阅读 2019-05-15 17:57:11
    初始化加载时定义currentPage为一个空对象,当初始化调用函数时解析至currnetPage后pagedefine因为没有初始化定义所以找不到它就会报错 解决办法: 在currnetPage中将pagedefine也进行定义。 总结: 在template...

    报错如下:
    在这里插入图片描述
    数据在后台可以打印出来,但是加载页面时报错
    数据结构:
    在这里插入图片描述
    数据加载
    在这里插入图片描述
    初始化进行调用,如下:

    在这里插入图片描述
    在这里插入图片描述
    原因:
    在初始化加载时定义currentPage为一个空对象,当初始化调用函数时解析至currnetPage后pagedefine因为没有初始化定义所以找不到它就会报错

    解决办法:
    在currnetPage中将pagedefine也进行定义。
    在这里插入图片描述
    总结:
    在template中调用的所有data接口都必须初始化定义。否则会报错。

    如果有不对的地方希望大家能够指出来,谢谢

    展开全文
  • 使用elementUI的el-image发现经常会出现加载src失败的情况,问题估计就是e-image的src路径一旦初始化加载失败的话就没有异步刷新。 目前解决办法,就是在“:src” 里添加默认图片地址,避免渲染DOM的时候找不到地址...
  • 当一个子SWF定义了某些类A的时候,可以通过加载它的主SWF访问到类A的定义并初始化一个新的对象。关键词:ApplicationDomain,getDefinition思想:我们通过访问loaderInfo的applicationDomain属性获得子SWF的域,然后...
  • Spring初始化加载流程分析

    万次阅读 2018-03-24 14:38:13
    关于Spring框架的介绍,网上有很多非常好的详细的文章,如果在本篇博客没有了解到自己想要的东西,个人能力有限,只能使用博客记录一下自己目前了解的...初始化环境—>加载配置文件—>实例化Bean—>调用Bean显示信息
  • jquery跟js初始化加载的多种方法 jquery和js初始化加载页面的区别: jquery:等待页面加载完数据,以及页面部分元素(不包括图片、视频), js:是页面全部加载完成才执行初始化加载。 jQuery 页面加载...
  • 在spring初始化过程中加载数据库的数据 项目有这个需求 需启动时将某些属性赋DB读到的值 达到同步数据的目的 考虑 1:构造函数 不可以 dao还未初始化 null point 2:xx 属性 = dao.getXX.... dao还未初始化 ...
  • 自启动加载数据库数据到项目内存: 1.应用场景:其实一般来说配置中心就可以解决很多自启动的一些配置参数等等。但是有的比较大的内容放配置文件去读感觉不是很合理。目前我自己的应用场景就是把一些需要的参数...
  • 前几天做了一个有关于用户授权的 dialog,在弹出的窗口嵌入五个标签页,每隔标签页的内容是通过iframe加载。 由于触发弹窗的时候会一次性加载出所有的标签页,但是因为没有切换到那些页面所以会导致无法找到页面上...
  • 在Spring Boot中加载初始化数据

    千次阅读 2020-02-12 09:21:12
    在Spring Boot中加载初始化数据 在Spring Boot,Spring Boot会自动搜索映射的Entity,并且创建相应的table,但是有时候我们希望自定义某些内容,这时候我们就需要使用到data.sql和schema.sql。 依赖条件 Spring ...
  • js页面初始化加载的总结

    千次阅读 2017-12-09 11:12:18
    方法一: $(document).ready(function(){  alert("方法一"); } 方法二:  $(function(){ alert("方法二");...使用以上方法需要在jsp页面引入js /js/jquery-1.11.3.js"> 不使用js function a(){ alert(s); }
  • 在一个Fragment,使用了ViewPager加载了9个Fragment 这个9个Fragment的布局有很多控件,导致viewPager.setAdapter()时很慢, 到最后一个Fragment加载完成大概有400ms的时间,有什么办法解决吗? 我设置了cha_...
  •  最近在阅读孙卫琴的java面向对象一书中,看到对java中类的初始化加载中的论述比较系统,故笔记之1)类的初始化,JAVA在初始化一个类时,以下步骤 A 假如类存在直接的父类,并且这个父类还没有初始化,则先...
  • 通过Jquery和Ajax初始化加载页面数据

    万次阅读 2018-05-10 17:10:11
    进入页面时,不需要任何点击,就主动通过Ajax发送post请求,并接收返回数据,在success进行页面数据的填充 返回的json格式为{ code:0, msg:"成功", data:-{ name:"jjjj", email:"1342746626@qq.com", ...
  • 使用jquery的ajax请求到后台,取得数据库数据,返回前台combo。 引入使用jquery需使用的js文件 引入使用dhtmlxCombo需使用的文件 window.dhx_globalImgPath = "dhtmlxCombo/codebase/imgs/"; ...
  • JVM类加载过程分为几个阶段,分别是加载、验证、准备、解析和初始化初始化阶段都是在什么时候触发的呢?本文给你带来详细解析。
  • 文章目录spring加载与非懒加载加载非懒加载单例(singleton)是非懒加载,多例(prototype)是懒加载初始化与销毁 spring加载与非懒加载加载 新建一个duck类 package cn.java.lazy4; /** * @Title: Duck....
  • Java中加载类并不一定初始化

    千次阅读 2019-06-25 19:04:13
    一、加载类不初始化的情况 Test.class.getClassLoader().loadClass("Student"); Class clazz = Student.class; 这两种情况下,加载类,但是不会“链接“和”初始化” 通过命令:java -verbose:class test查看类加载...
  • 使用jquery的ajax请求到后台,取得数据库数据,返回前台grid。 引入使用jquery需使用的js文件 引入使用dhtmlxCombo需使用的文件 js文件 var mygrid; // 定义mygrid $(document)....
  • 待解)时,会对静态初始化块,静态成员变量,静态方法进行一次初始化。 2.只有在使用new构造实例时才会创建类的实例。 3.当类的字节码被加载时,如果没有创建对象,那么实例变量不会被分配内存,累的实例方法也不会...
  • 加载时候的初始化,在执行这个类的 main方法时,会导致类进行加载,而类加载的属性如下:1、虚拟机在首次加载Java类时,会对静态初始化块、静态成员变量、静态方法进行一次初始化。我们不要去纠结这里的顺序,...
  • 背景: 笔者之前一直使用 bootstrap table ,因为当前项目主要...1、使用 Layui 官方提供的 【转换静态表格】 方式初始化加载时报 id 找不到的错误(自己的锅) 2、传递参数问题(姑且算是 Layui 官方的锅)
  • 原因是el-image的 :src=" " 在初始化时,图片路径由接口返回还未加载数据导致的问题,且第一次渲染失败不会再异步刷新。 解决办法: 在el-image加上 v-if="imageData.src !== undefined" 判断,不是后端返回的话...
  • 推荐 Spring Boot/Cloud 视频: ...在Spring-Cloud-Gateway初始化时我们在GatewayAutoConfiguration配置看到了有初始化加载GatewayProperties实例的配置,接下来学习下GatewayProperties都加载了哪些信息 Gat...
  • 加载初始化

    千次阅读 2019-01-27 20:25:47
    程序使用某个类时,如果该类没有被加载到内存,则系统会通过加载、连接、初始化3个步骤对该类进行初始化。类加载指的是将类的class 文件读入内存,并创建一个java.lang.Class 对象,程序使用任何类时系统都会建立...
  • 前面一篇文章说了类初始化的过程,本篇说说继承关系类的加载初始化
  • DHTMLXTree的初始化 动态加载 等操作var tree; function initTree(){ tree=new dhtmlXTreeObject("treeboxbox_tree","100%","100%",0); tree.setImagePath("../../codebase/imgs/csh_bluefolders/"); tree....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 28,084
精华内容 11,233
关键字:

初始化加载中