JavaScript中的$(function (){})的作用
例子:点击按钮触发一个事件
$("#button").click(function (){
alert("hello");
})
上述代码写在jsp页面head中运行时不会实现弹窗
原因
页面解析的顺序是从上往下解析再进行渲染的,当将js文件在head引入的时候,DOM节点的设置就会出错因为此时DOM还没有加载DOM树还没有形成,js函数可能选择不到需要设置的节点,所以当一般会对document
进行一个ready
事件的设置。
read
事件:当页面被载入并且DOM树完成初始化后触发。
$(document).ready(function () {
/*对document设置事件当页面加载完毕,
DOM树生成完毕之后就会触发事件执行后面的js函数*;/
});
//简略写法
$(function(){
//后续需要执行的js函数;
})
更改之后
$(function(){
$("#button").click(function (){
alert("hello");
})
});
上述代码实现了先将页面元素加载生成DOM树之后再进行页面渲染,这样js函数就能够找到需要设置的元素。