js之onload事件的一点使用心得

如果我问你window.load和window.onload分别是什么意思,恐怕你会回答我:“这不是页面加载完就执行吗”。
但是答案是不一定,得看你怎么用。看一下例子吧
例1:


代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Untitled</title>
<script type="text/javascript">
function ShowMessage()
{
alert("true");
}
window.onload=ShowMessage();
</script>
</head>
<body>
当你看到true时看不到我
</body>
</html>

当你看到true的弹出框的时候,你肯定没有看到“当你看到true时看不到我”,说明页面还没有载入完就已经开始执行js了。
例2


代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Untitled</title>
<script type="text/javascript">
function ShowMessage()
{
alert("true");
}
window.onload=function(){ShowMessage();}
</script>
</head>
<body>
你看到true时就看到我了
</body>
</html>

当你看到true的弹出框的时候,你也会看到“你看到true时就看到我了”,这个才是真正的页面载入完才触发。
PS:推荐像onload事件之类的使用匿名函数执行,即window.onload=function(){ShowMessage();}这种形式。

时间: 2013-08-12

js function定义函数使用心得

1.最基本的作为一个本本分分的函数声明使用. 复制代码 代码如下: function func(){} 或 var func=function(){}; 2.作为一个类构造器使用: 复制代码 代码如下: function class(){} class.prototype={}; var item=new class(); 3.作为闭包使用: 复制代码 代码如下: (function(){ //独立作用域 })(); 4.可以作为选择器使用: 复制代码 代码如下: var addEvent=ne

初学jsp心得

测试环境为 jdk1.2.2 jswdk-1.0 winnt4.0中文版. 1.java是大小写敏感的,用过其他编程语言的人最容易犯这个错误,尤其是刚上手的时候.我刚开始调试jsp的时50%以上的编译错误是都是因为这个. 2.java的调用过程都是要加括号的,一开始比较容易忽视,如title=request.getParameter("title").trim(); 3.jsp中对应asp中的request.form()和request.querystring()的解决方法. jsp中

javascript 模式设计之工厂模式学习心得

模式类型:工厂模式 模式说明:常用模式之一,用来动态创建对象 适用范围:在运行期间需要在一系列可互换的子类中进行选择的类 注意事项:接口的实现,从而使不同子类可以被同等的对待,恰当的使用工厂模式,但不要拘泥与形式,理解本质. 关键点:以 函数/类/子类 构建的选择器 本质:函数作为选择器的使用 一般使用形式: 作为独立的选择器存在: 复制代码 代码如下: function FactoryMode(index){ switch(index){ case "index1" : return

Extjs4 Treegrid 使用心得分享(经验篇)

最近调试EXTJS 4的treegrid实例,看了很多水友的文章,以及官方的demo, 没一个可靠的,全都无法显示出来.像对于我们习惯用C++的coder来说,EXTJS简直就是一群无政府土匪来维护的,官网上连个搜索框都没有,找资料基本靠遍历,还是人工的. 使用treegrid,需要在调用页面的head中加载以下几个文件: 复制代码 代码如下: <link rel="stylesheet" type="text/css" href="css/ext-

jsp JFreeChart使用心得与例子

当前的JFreeChart的最新版本为jfreechart-1.0.11.zip.可以到http://www.jfree.org/jfreechart/index.html找到 二.JFreeChart的基本使用 不论创建的是什么图,JFreeChart都遵循以下的这个使用步骤: 1.建立Dataset.所有的数据都存放在Dataset中的.(创建一个数据源(dataset)来包含将要在图形中显示的数据) 2.建立JFreeChart.将dataset中的数据导入到JFreeChart中.(创建

js使用心得分享

本人学习javascript时间也不是很长,目前就如下5点心得,后续慢慢更新. 1. 给未经声明的变量赋值在严格模式下会导致抛出 ReferenceError 错误(意思是,所有变量都必须用 var 去定义,不能在函数内部定义全局变量): 2. 在严格模式下,不能定义名为 eval 和 arguments 的变量,否则会导致语法错误: 3. 判断一个变量值是否等于 undefined 是为了正式区分空对象指针与未经初始化的变量: 4. 只要意在保存对象的变量还没有真正保存对象,就应该明确地让该对

JavaScript中出现乱码的处理心得

常见乱码情况: 1.客户端提交数据到后台,参数值有乱码情况,如:a.aspx?value="中文值"&type="%$#((&_特殊符号": 2.后台读数据到客户端后出现乱码: 3.部分文件间js引用或css样式无效. 总结解决方法: 一:首先保证项目相关的文件格式编码(即另存为格式)统一为utf-8,特别是相关的CSS,JS文件的格式强烈建议统一为 utf-8: 二: JS中涉及到参数提交,传递,有可能出现中文.'_'下划线.特殊符号的地方,用es

JSP学习心得

作者:徐春金 下面是本人在学习JSP时的一些心得: 一.JSP工作原理 在一个JSP文件第一次被请求时,JSP引擎把该JSP文件转换成为一个servlet.而这个引擎本身也是一个servlet,在JSWDK或WEBLOGIC中,它就是JspServlet. JSP引擎先把该JSP文件转换成一个Java源文件,在转换时如果发现jsp文件有任何语法错误,转换过程将中断,并向服务端和客户端输出出错信息:如果转换成功, JSP引擎用javac把该Java源文件编译成相应的class文件.然后创建一个该S

Backbone中View之间传值的学习心得

Backbone中的View就是用来展示由Model层传出的数据,或者在View里产生的一些数据,包括输入框中输入等产生的数据,由当前View传递到另外一个View层里,应该怎么办呢,我之前读到一位博主<Backbone View的三种通信方式 >写的尤为的清晰,在我实际的项目中,常常使用的也就是最后一种方式. 嘿嘿,分享知识是一件快乐的事情,我就直接借鉴表述一下如下: 直接用 Backbone 作为事件注册机, 代码如下: var ApplicationView = Backbone.Vie

JAVA/JSP学习系列之八(改写MySQL翻页例子)

一.前言 其实,改写后的JDBC Data-Source是运行在Servlet中的,通过JNDI去查找数据源.我用Orion试的,将本站<JAVA/JSP学习系列之六(MySQL翻页例子) > 简单改写了一下. 二.配置 (1)JDBC 需要将用到的JDBC驱动Copy到[ORION]/lib目录下 (2)data-source 在[ORION]/config/data-sources.xml文件中加入如下: 〈data-source class="com.evermind.sql.

vue2.X组件学习心得(新手必看篇)

VUEJS学习网址:https://cn.vuejs.org/ 此文章是用来记录自己的学习和实践心得. 关注点:父子组件之间的通信 看图说话: Pass Props 子组件本身与父组件是孤立的,通过子组件中显示声明的props属性,接收父组件数据; 父组件的数据更新时,子组件的prop会跟着更新: 此数据流动是单向的(看着); Emit Events 子组件使用$.emit(fn)向外抛出自己的内部触发的事件; 父组件是否监听?如果父组件需要监听,使用v-on绑定监听,触发对应事件; 以上为通用

python简单线程和协程学习心得(分享)

python中对线程的支持的确不够,不过据说python有足够完备的异步网络框架模块,希望日后能学习到,这里就简单的对python中的线程做个总结 threading库可用来在单独的线程中执行任意的python可调用对象.尽管此模块对线程相关操作的支持不够,但是我们还是能够用简单的线程来处理I/O操作,以减低程序响应时间. from threading import Thread import time def countdown(n): while n > 0: print('T-minus:

使用Promise解决多层异步调用的简单学习心得

前言 第一次接触到Promise这个东西,是2012年微软发布Windows8操作系统后抱着作死好奇的心态研究用html5写Metro应用的时候.当时配合html5提供的WinJS库里面的异步接口全都是Promise形式,这对那时候刚刚毕业一点javascript基础都没有的我而言简直就是天书.我当时想的是,微软又在脑洞大开的瞎捣鼓了. 结果没想到,到了2015年,Promise居然写进ES6标准里面了.而且一项调查显示,js程序员们用这玩意用的还挺high. 讽刺的是,作为早在2012年就在M

给php新手谈谈我的学习心得

明天开始期末考试,接着后天就要回福州了,由于家里还没装网络,因此,得有一段时间不能来论坛了,在这之前,我想了下,我给新手解答过问题,演示过代码,好像没谈过自己的学习心得,临走之前,我就来谈谈我学习PHP的心得,虽然是老生长谈,但是我想我的情况还是具有代表性的,希望各位想加入PHPER队伍的新生力量能有所帮助. 大家学习PHP大部分都靠自学,我也不例外,不乏和我一样过去是做ASP的,刚看到PHP代码,我就感到奇怪,怎么里面这么多$啊?好奇怪啊,潜意识我觉得这东西肯定比ASP难多了,可是当我领略了P

JSP学习之Servlet用法分析

本文讲述了JSP学习之Servlet用法.分享给大家供大家参考.具体分析如下: Servlet是使用JavaServlet应用程序设计接口编写的Java程序,源于请求/响应模式,可以接受来自客户端浏览器的Http请求,产生一个响应并返回客户端. Applet JSP JavaBean 和Servlet的区别和联系 Applet和Servlet中都没有main()方法,只有一些特定的方法,用于启动执行和退出,但是Servlet不提供用户界面,运行在服务器端,而Applet提供用户界面,运行在客户端

MySQL 5.7 学习心得之安全相关特性

1,账号安全相关的特性 1.1:创建用户 5.7版本的用户表mysql.user要求plugin字段非空,且默认值是mysql_native_password认证插件,并且不再支持mysql_old_password认证插件.5.7用户长度最大为32字节,之前最大长度为16字节,并且CREATE USER 和 DROP USER 命令里实现了 IF [NOT] EXISTS 条件判断.5.7之后用户通过grant创建用户报warning.如: grant all on *.* to dxy@lo

JSP学习之Java Web中的安全控制实例详解

本文实例讲述了JSP学习之Java Web中的安全控制.分享给大家供大家参考.具体如下: 一.目标: ① 掌握登录之后的一般处理过程: ② 能够为每个页面添加安全控制: ③ 能够共享验证代码: ④ 使用过滤器对权限进行验证: ⑤ 能够对文件的局部内容进行验证: ⑥ 掌握安全验证码的基本实现方式: ⑦ 通过异常处理增强安全性. 二.主要内容: ① 通过修改前面的登录功能,分别对管理员和普通用户的登录进行处理: ② 为管理员才能访问的页面添加控制: ③ 共享各个页面中的控制代码,使用专门的文件,然后