JavaScript文档加载和事件绑定

为了保证网页代码层次清晰,便于管理,一般HTML中只体现网页结构,具体的行为处理通过JS实现,样式则通过CSS文件管理。

在以上原则下通过JS实现行为时,一定要注意文档加载过程中,执行JS代码的时机。页面加载过程有两个事件,一是ready,表示文档结构已经加载完成(不包含图片等非文字媒体文件),二是onload,指示页 面包含图片等文件在内的所有元素都加载完成。(可以说:ready 在onload 前加载。)

(1) 一些待调用函数定义,要在调用前定义。

(2) 对于完善网页元素的JS,伴随文档加载执行。

(3) 而绑定元素事件响应的JS,则一定要等到相应元素加载后或文档全部加载完成后再执行,否则无法找到元素,当然不可绑定事件。

对于第(3)种情况,利用JavaScript实现时代码如下。

window.onload = function(){
  document.getElementById(‘id‘).addEventListener(‘click‘,func,false); //需定义响应函数func
} 

利用JQuery时可有两种写法。

$(function(){
  $("#id").click(function(){
    //adding your code here
  });
   $("#id").bind(‘dbclick‘, function(){
    //adding your code here
  });
});
$(document).ready(function(){
  $("#a").click(function(){
    //adding your code here  
  });
   $("#id").bind(‘dbclick‘, function(){
    //adding your code here
  });
});

另外,需要注意的是,JS实现时,代码会在整个页面的document全部加载完成以后执行。不幸的这种方式不仅要求页面的DOM tree全部加载完成,而且要求所有的外部图片和资源全部加载完成。更不幸的是,如果外部资源,例如图片需要很长时间来加载,那么这个js效果就会让用户感觉失效了。



JavaScript文档加载和事件绑定,布布扣,bubuko.com

时间: 2024-10-16 13:33:44

JavaScript文档加载和事件绑定的相关文章

document.ready和onload的区别——JavaScript文档加载完成事件

文章转自:http://blog.csdn.net/kk5595/article/details/5713209 页面加载完成有两种事件,一是ready,表示文档结构已经加载完成(不包含图片等非文字媒体文件),二是onload,指示页 面包含图片等文件在内的所有元素都加载完成.(可以说:ready 在onload 前加载!!!) 我的理解: 一般样式控制的,比如图片大小控制放在onload 里面加载; 而:jS事件触发的方法,可以在ready 里面加载; 更多内容戳这里:http://blog.

Javascript绝不要使用在文档加载之后使用 document.write(), 怎么理解?

在文档加载之后使用 document.write(),会覆盖该文档. 需满足两个条件: 1.在函数内部调用document.write(): 2.通过按钮响应调用函数: 举例: 输出结果: 点击“点击这里”,加载文档,文档被覆盖:

文档加载

页面加载过程有两个事件,一是ready,表示文档结构已经加载完成(不包含图片等非文字媒体文件),二是onload,指示页 面包含图片等文件在内的所有元素都加载完成.(可以说:ready 在onload 前加载.) (1) 一些待调用函数定义,要在调用前定义. (2) 对于完善网页元素的JS,伴随文档加载执行. (3) 而绑定元素事件响应的JS,则一定要等到相应元素加载后或文档全部加载完成后再执行,否则无法找到元素,当然不可绑定事件. 使用onload 不仅要求文档DOM 树加载完成,还要求文档的

jquery.ready可以在文档加载后尽快执行对文档的操作

jquery 1.12.4中ready的关键代码 1 jQuery.ready.promise = function( obj ) { 2 if ( !readyList ) { 3 4 readyList = jQuery.Deferred(); 5 6 // Catch cases where $(document).ready() is called 7 // after the browser event has already occurred. 8 // Support: IE6-1

关于文档加载的方法

怎么排版啊啊啊... 1.首先用的最多的jQuery中有3种针对文档加载的方法 1 $(document).ready(function() { 2 // ...代码... 3 }) //document ready 简写 $(function() { // ...代码... }) $(document).load(function() { // ...代码... }) 其中第二种是第一种的简写方式. .ready和.load区别 先了解DOM文档加载的步骤: (1) 解析HTML结构. (2)

JS如何实现文档加载完成后再去执行代码

JS如何实现文档加载完成后再去执行代码:在执行某些操作的时候,需要当文档完全加载完成之后再去执行,否则可能出现意向不到的情况,先看一段代码实例: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.51texiao.cn/" /> <title&g

js坚持不懈之14:不要在文档加载之后使用 document.write()示例

在看w3school的JavaScript教程时,关于文档输出流中有这么一句话:绝不要在文档加载之后使用 document.write().这会覆盖该文档. 不太明白什么意思,找了一个例子: <!DOCTYPE html> <html> <body> <p>点击按钮就可以执行 <em>displayDate()</em>函数.</p> <button onclick = "displayDate()&quo

【JS教程16】jquery文档加载完再执行

jquery文档加载完再执行 将获取元素的语句写到页面头部,会因为元素还没有加载而出错,jquery提供了ready方法解决这个问题,它的速度比原生的 window.onload 更快. <script type="text/javascript"> $(document).ready(function(){ ...... }); </script> 可以简写为: <script type="text/javascript"> $

jquery文档加载几种写法,图片加载写法

jquery文档加载写法: $(function(){ }) ; //个人最常使用方式 $(document).ready(function(){ }); //调用文档对象下的ready方法传入一个函数. $(window).load(function() { });//调用window对象下的load方法传入一个函数. (function() { })(jQuery)//()()表示立即执行 并且传入jquery = $ 所以之前$也可以替换为jQuery 注意: jquery的ready只是