jquery中的$(function(){...})什么时候执行

2024-11-24 02:34:56
推荐回答(5个)
回答1:

$(function(){...})函数当 DOM(文档对象模型) 已经加载,并且页面(包括图像)已经完全呈现时,执行。

此事件等同于jquery的ready()事件的一种语法,完整的三种如下:

$(document).ready(function)

$().ready(function)

$(function)

简单地说,这个方法纯粹是对向window.load事件注册事件的替代方法。通过使用这个方法,可以在DOM载入就绪能够读取并操纵时立即调用你所绑定的函数,而99.99%的JavaScript函数都需要在那一刻执行。

$(function () {var opName = getUrlParam('opname');// var opName = "OP3040";document.getElementById("txtName").value = opName;getplan(opName);getopname(opName);// getplan(opName);connect();getFoucs();InitGrid();});

F5的时候,页面刷新,重新读取DOM节点完成后,自动执行ready()函数里面的函数体。

$('ID')只是选中某个元素,比如你的函数第三行:  document.getElementById("txtName")。并没有执行函数的含义。

扩展资料

jQuery的模块可以分为3部分:入口模块、底层支持模块和功能模块。

在构造jQuery对象模块中,如果在调用构造函数jQuery()创建jQuery对象时传入了选择器表达式,则会调用选择器Sizzle(一款纯JavaScript实现的CSS选择器引擎,用于查找与选择器表达式匹配的元素集合)遍历文档,查找与之匹配的DOM元素,并创建一个包含了这些DOM元素引用的jQuery对象。

浏览器功能测试模块提供了针对不同浏览器功能和bug的测试结果,其他模块则基于这些测试结果来解决浏览器之间的兼容性问题。

在底层支持模块中,回调函数列表模块用于增强对回调函数的管理,支持添加、移除、触发、锁定、禁用回调函数等功能;异步队列模块用于解耦异步任务和回调函数,它在回调函数列表的基础上为回调函数增加了状态,并提供了多个回调函数列表,支持传播任意同步或异步回调函数的成功或失败状态。

数据缓存模块用于为DOM元素和Javascript对象附加任意类型的数据;队列模块用于管理一组函数,支持函数的入队和出队操作,并确保函数按顺序执行,它基于数据缓存模块实现。

在功能模块中,事件系统提供了统一的事件绑定、响应、手动触发和移除机制,它并没有将事件直接绑定到DOM元素上,而是基于数据缓存模块来管理事件。

Ajax模块允许从服务器上加载数据,而不用刷新页面,它基于异步队列模块来管理和触发回调函数;动画模块用于向网页中添加动画效果,它基于队列模块来管理和执行动画函数;

属性操作模块用于对HTML属性和DOM属性进行读取、设置和移除操作;DOM遍历模块用于在DoM树中遍历父元素、子元素和兄弟元素。

DOM操作模块用于插入、移除、复制和替换DOM元素;样式操作模块用于获取计算样式或设置内联样式;坐标模块用于读取或设置DOM元素的文档坐标;尺寸模块用于获取DOM元素的高度和宽度。

jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。

它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。

jQuery的核心特性可以总结为:具有独特的链式语法和短小清晰的多功能接口;具有高效灵活的css选择器,并且可对CSS选择器进行扩展;拥有便捷的插件扩展机制和丰富的插件。jQuery兼容各种主流浏览器,如IE 6.0+、FF 1.5+、Safari 2.0+、Opera 9.0+等。

技术应用

只需要少量的代码,即可将它们集成到网站上,并且能够帮助访问者分享网站上的内容。 [12] 

移动端

JQuery Mobile 1. 2是JQuery运行在手机和平板设备上的版本。JQuery Mobile 1. 2给主流移动平台提供了JQuery的核心库,发布了一个完整统一的JQuery移动UI设计框架,在不同的智能手机和桌面电脑的web浏览器上形成统一的用户UI。

支持全球主流的移动平台,对每个平台的支持分为三个等级:A、B、C,实现了对Android 2.1-2.3、3.2、4.0、4. 1、Palm WebOS 1.4-2.0、3.0、Firefox Mobile 15,Opera Mobile 11.5-12等平台的A级支持。

JQuery Mobile 1. 2的核心使得基本的HTML标签在所有的浏览器中生效,并且对网页的行为和效果均进行了增强,让网页在等级较高的浏览器中能获得优秀的体验,在较差的浏览器中也能正常的使用。

参考资料:百度百科 jQuery的工作原理

回答2:

这个是在页面DOM文档加载完成后加载执行的,等效于$(document).ready(function(){...});
优于window.onload,后者必须等到页面内包括图片的所有元素加载完毕后才能执行。

$('ID')只是选中某个元素,比如你的函数第三行:  document.getElementById("txtName")。并没有执行函数的含义。

扩展资料:

jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。

jQuery的核心特性可以总结为:具有独特的链式语法和短小清晰的多功能接口;具有高效灵活的css选择器,并且可对CSS选择器进行扩展;拥有便捷的插件扩展机制和丰富的插件。jQuery兼容各种主流浏览器,如IE 6.0+、FF 1.5+、Safari 2.0+、Opera 9.0+等。

参考资料:jQuery官方API--ready() 事件

回答3:

$(function(){...})函数当 DOM(文档对象模型) 已经加载,并且页面(包括图像)已经完全呈现时,执行。

此事件等同于jquery的ready()事件的一种语法,完整的三种如下:

$(document).ready(function)

$().ready(function)

$(function)

简单地说,这个方法纯粹是对向window.load事件注册事件的替代方法。通过使用这个方法,可以在DOM载入就绪能够读取并操纵时立即调用你所绑定的函数,而99.99%的JavaScript函数都需要在那一刻执行。

$(function () {
var opName = getUrlParam('opname');
// var opName = "OP3040";
document.getElementById("txtName").value = opName;
getplan(opName);
getopname(opName);
// getplan(opName);
connect();

getFoucs();
InitGrid();
});

F5的时候,页面刷新,重新读取DOM节点完成后,自动执行ready()函数里面的函数体。

$('ID')只是选中某个元素,比如你的函数第三行:  document.getElementById("txtName")。并没有执行函数的含义。

扩展资料:

可以在同一个页面中无限次地使用$(document).ready()事件。其中注册的函数会按照(代码中的)先后顺序依次执行

ready()事件优于window.onload,后者必须等到页面内包括图片的所有元素加载完毕后才能执行。不应与 一起使用。

由于该事件在文档就绪后发生,因此把所有其他的 jQuery 事件和函数置于该事件中是非常好的做法。

参考资料:jQuery官方API--ready() 事件

回答4:

这个是在页面DOM文档加载完成后加载执行的,等效于$(document).ready(function(){...});
优于window.onload,后者必须等到页面内包括图片的所有元素加载完毕后才能执行。

回答5:

$(function (){ 是$(document).ready(function()的简写
$(function (){
.
.
.});
是页面自动加载执行的。如果你不想让它自动执行可以把这些放到一个函数中,想执行时调用就可以了