`
qinzhenzhou
  • 浏览: 10356 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

javascript控件开发之动态加载(2)

阅读更多
    上一篇在init.js文件内编写了加载对象, 在这基础上, 在init.js文件内再定义一个全局变量,及一个起始函数(startup),在body加载完成后执行,
    另外要再准备一个可供加载js的文件,在common目录下新增加一个文件,staticScript.js,代码中只有一个数组对象,为了验证加载的情况,我们再添加一个简单的样式com.comStyle.css文件,
文件目录如下
+--demo
     +--script
          +--common
               +--init.js
               +--staticScript.js
          +--css
               +--com.comStyle.css
     +--web
          +--test.html
init.js新增加的代码如下,startUp这段代码的思路是, 先把脚本列表文件加载进来即staticScript.js文件,然后跟据文件内的文件数组列表,按顺序加载到页面中,最后调用onShow事件函数,
startUp是我们整个系统框架的启动函数,类似操作系统的bootStart,我们加一段等待body加载完成后再调用startUp函数的代码,用setInterval来定时判断调用。
//win object
var thisWindow = new scriptUtil();
function startUp() {
        //获取相对路径
	var initsrc = thisWindow.getPath();
        //加载文件列表js文件。
	thisWindow.Import(["staticScript.js"], function(state) {
		if (state && typeof staticScript != "undefined") {
			var len = staticScript.length;          
                        //加载列表中的文件。                      
			thisWindow.Import(staticScript, function(state) {               
                        //处理页面显示事件。
				    if (typeof thisWindow.onShow == "function") {
					    thisWindow.onShow();
				    }                
			}, initsrc);
		}
	}, initsrc);
};
//等待body加载后,执行startUp
var sartHandel = setInterval(function() {
    if(document.getElementsByTagName("body") != null) {
        clearInterval(sartHandel)
        startUp();        
    } else {
        thisWindow.LogInfo("waitting loading...");
    }
},20);

脚本列表文件,此处的相对路径,是以init.js所在的目录(common)为起点,往上一个文件夹(script),再进入css文件夹,
staticScript.js
staticScript = [
    "../css/com.comStyle.css"
];

样式文件如下
.winStyle {
    border:1px solid #C3D2E6;
    font-size:12px;
    width:10px;
    height:10px;
}

到此,我们可以先进行一下测试,
直接用浏览器打开test.html 然后查看控制台,就会发现输出如下:
"import script ../script/common/staticScript.js sucess."
"import css ../script/common/../css/com.comStyle.css sucess."

再通过html查看器查看到的html源码,已变成如下代码
<!DOCTYPE html>
<html>
    <head>
        <title>test</title>
        <script type="text/javascript" src="../script/common/init.js"></script>
        <script type="text/javascript" src="../script/common/staticScript.js"></script>
        <link rel="stylesheet" type="text/css" href="../script/common/../css/com.comStyle.css"></link>
    </head>
    <body>
    </body>
</html>

与原始的html代码,是不是区别很大呀,
原始html代码如下:
<!DOCTYPE html>
  <head><title>test</title>
    <script src="../script/common/init.js" type="text/javascript"></script>
  </head>  
  <body>
  </body>
</html>

到了这里,你是否也有种兴奋的感觉呀?是否也给了你无限的遐想空间呢?
附件是到目前为止,所写的脚本包,可下载测试。
请关注下一篇,控件开发之继承关系
  • 1.rar (2.3 KB)
  • 下载次数: 10
分享到:
评论
1 楼 rex0654335 2014-04-09  
好牛B 的样子

相关推荐

    javascript控件开发之动态加载

    动态加载作为JavaScript控件开发中的一个重要概念,是提升网页性能和用户体验的关键手段。动态加载意味着控件或资源不是在页面加载时一次性全部加载,而是根据需要按需加载,从而减少了初始页面加载时间,降低了对...

    javascript控件开发之布局控件

    JavaScript控件开发是Web开发中的重要一环,特别是在构建交互丰富的网页应用时。布局控件是其中的关键元素,它允许开发者有效地组织和管理页面上的元素,实现多控件的协调和共存。在这个主题中,我们将深入探讨...

    javascript控件开发之工具栏控件

    在JavaScript控件开发中,工具栏控件是一个关键的元素,它通常被用来提供用户界面中的功能快捷方式或操作选项。工具栏控件的设计和实现是网页交互性的重要组成部分,尤其是在构建富客户端应用或者增强用户体验的网页...

    javascript控件开发之页面控制器

    在本主题"JavaScript控件开发之页面控制器"中,我们将深入探讨如何利用JavaScript来实现对网页的控制,特别是页面控制器的实现。页面控制器通常用于管理页面的导航、数据加载以及用户交互逻辑,它是构建大型单页应用...

    javascript控件

    JavaScript控件是网页开发中常用的一种元素,它们用于增强用户界面的交互性和功能。JavaScript是一种轻量级的脚本语言,常被嵌入HTML页面中,以实现动态内容的生成和用户交互。在这个主题中,我们将深入探讨...

    动态加载时间控件

    在网页开发中,动态加载时间控件是一种常见且实用的技术,它允许用户在页面交互过程中按需加载时间选择组件,从而提高页面性能和用户体验。这种技术尤其适用于数据量大或者资源消耗高的应用,因为它可以避免一次性...

    动态加载带参数的ASCX用户控件

    在.NET开发环境中,ASP.NET提供了一种强大的机制,允许开发者在运行时动态地加载和添加用户控件(ASCX)。这种技术在构建高度可配置、动态的Web应用程序时非常有用。"动态加载带参数的ASCX用户控件"是这个过程的一种...

    几个经典JavaScript控件

    在网页设计中,JavaScript控件是不可或缺的一部分,它们为用户提供了丰富的交互体验。以下是一些基于JavaScript的经典控件及其相关的知识点: 1. **表格操作**: - `javascript 表格操作.html` 和 `操控表格.txt` ...

    vue动态加载外部依赖js代码实现

    在前端开发中,有时我们需要动态地加载外部JavaScript库或脚本文件。特别是在构建大型Vue应用程序时,可能会遇到需要按需加载某些功能的情况,例如第三方库、API接口等。本文将详细介绍如何通过创建一个Vue组件来...

    asp.net动态加载JavaScript树

    ASP.NET动态加载JavaScript树是一种常见的前端交互技术,用于在网页中构建可扩展的、动态的树形结构。这种技术结合了后端ASP.NET的强大处理能力和前端JavaScript的灵活展示,为用户提供了良好的交互体验,尤其适用于...

    javascript调用ocx控件实现加载进度条

    在本例中,"javascript调用ocx控件实现加载进度条"意味着开发者已经创建了一个OCX(OLE Control Extension)控件,这是一个基于COM(Component Object Model)的二进制组件,专门用于在网页上显示和管理进度条。...

    Calendar日历JavaScript控件

    日历JavaScript控件在网页开发中广泛使用,主要功能是为用户提供直观的日期选择界面,增强用户体验。本文将深入探讨“Calendar日历JavaScript控件”的特点、使用方法及其实现原理。 首先,"Calendar日历JavaScript...

    VC++ Activex控件开发

    VC++ ActiveX控件开发是Windows应用程序开发中的一个重要部分,主要涉及的是利用Microsoft Visual C++这一集成开发环境(IDE)创建能够嵌入到其他应用程序、网页或者Active Desktop中的控件。ActiveX技术允许开发者...

    c# webform 异步加载用户控件

    2. **在主页面引用用户控件**:在需要异步加载的主页面中,为用户控件提供一个容器,例如一个空的Div,同时在后台代码中声明对用户控件的引用。 3. **编写JavaScript**:使用jQuery的$.ajax方法或者$.get方法,发起...

    Web2.0控件开发

    Web2.0控件开发是.NET框架中一个关键的领域,它允许开发者创建高度交互、动态且用户友好的网页应用。在.NET环境中,控件是构建用户界面的基础元素,而Web2.0控件开发则进一步拓展了这些基础,引入了更先进的功能和...

    树控件,支持无限级树,支持动态加载节点。不用自己写js

    本项目提供了一个自定义的树控件,特别强调了其支持无限级节点以及动态加载功能,这意味着用户可以构建深度任意的树结构,并且在需要时按需加载子节点,从而提高应用程序的性能和用户体验。 首先,无限级树是树控件...

    JavaScript开发的日期控件

    JavaScript是一种广泛应用于网页和网络应用开发的脚本语言,它在客户端运行,为用户提供动态交互体验。在网页中,日期控件是常见的交互元素,用于选择或显示日期,常用于表单填写、事件安排等场景。这篇内容我们将...

    javascript树形控件

    2. 动态加载:为了优化性能,大容量的树形数据可以实现按需加载,即只有在节点被展开时才请求并显示其子节点。 3. 多选和拖放:一些树形控件支持多选功能,允许用户同时选择多个节点。拖放功能则可以用来调整节点的...

    javascript 经典tab控件

    模仿ExtJS的Tab控件意味着它可能包含类似的功能,如动态添加和删除标签页、支持Ajax加载内容、自定义样式等。 在实际开发中,创建一个JavaScript Tab控件通常涉及以下几个关键步骤: 1. **HTML结构**:首先,我们...

Global site tag (gtag.js) - Google Analytics