您的位置:首页 > Web前端 > JQuery

jQuery中$(function()与(function($)、$(function(){ }) = $(document).ready(function(){ })及页面加载顺序

2014-11-20 19:11 651 查看
(function($) {…})(jQuery);

这里实际上是匿名函数,如下:

function(arg){…}

这就定义了一个匿名函数,参数为arg

而调用函数时,是在函数后面写上括号和实参的,由于操作符的优先级,函数本身也需要用括号,即:

(function(arg){…})(param)

这就相当于定义了一个参数为arg的匿名函数,并且将param作为参数来调用这个匿名函数

而(function($){…})(jQuery)则是一样的,之所以只在形参使用$,是为了不与其他库冲突,所以实参用jQuery

相当于funtion output(s){…};output(jQuery);或者var fn=function(s){…};fn(jQuery);

$(function(){…});

或者:

jQuery(function($) {



});

允许你绑定一个在DOM(不包含图片)文档载入完成后执行的函数。这个函数的作用如同$(document).ready()一样,只不过用这个函数时,需要把页面中所有需要在 DOM 加载完成时执行的$()操作符都包装到其中来。从技术上来说,这个函数是可链接的--但真正以这种方式链接的情况并不多。

全写是:

$(document).ready(function(){



});

-------------------------------------------

document.ready和onload的区别:
一、JavaScript文档加载完成事件页面加载完成有两种事件一是ready,表示文档结构已经加载完成(不包含图片等非文字媒体文件)

二、是onload,指示页面包含图片等文件在内的所有元素都加载完成。

用jQ的人很多人都是这么开始写脚本的:
  $(function(){
// do something
  }); 

其实这个就是jq ready()的简写,他等价于:

  $(document).ready(function(){
//do something
  });

或者下面这个方法,jQuer的默认参数是:“document”;

  $().ready(function(){
//do something
  });

这个就是jq ready()的方法就是Dom Ready,他的作用或者意义就是:在DOM加载完成后就可以可以对DOM进行操作。

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

那么Dom Ready应该在“加载js和css”和“加载图片等其他信息”之间,就可以操作Dom了。

原文出处:http://blog.csdn.net/chelen_jak/article/details/18988077
http://blog.csdn.net/javazw123/article/details/6217988
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐