jQuery之常见知识点整理

1.jQ中页面加载完毕后自动执行js的方法

1).整个页面的document全部加载完成以后执行。

window.onload =function() { 
    $("table tr:nth-child(even)").addClass("even"); 
    //这个是jquery代码 
};

2).加载DOM结构后执行

$(document).ready(function() { 
    //任何需要执行的js特效
    $("table tr:nth-child(even)").addClass("even"); 
});

3).同2

$(function() { 
    $("table tr:nth-child(even)").addClass("even"); 
    //任何需要执行的js特效
}

 

2.jQ中的选择器表达式有哪些?

单独列一篇说明

 

3.jQuey的加载问题

看下面的例子:

<html>
<head>
<title>无标题文档</title>
</head>
<script type="text/javascript" src="./jquery-1.8.0.js"></script>
<script type="text/javascript">
	$(document).ready(
		function(){
			$("#button1").click(
				function(){
					alert("button1 click");
				}
			)
		}
	)
	
	$("#button2").click(
		function(){
			alert("button2 click");
		}
	)
</script>
<body>
	<input id = "button1" type="button" value="button1" /><br/>
	<input id = "button2" type="button" value="button2" /><br/>
	<input id = "button3" type="button" value="button3" /><br/>
</body>
<script type="text/javascript">
	$("#button3").click(
		function(){
			alert("button3 click");
		}
	)
</script>
</html>

上面的代码中,有三个button,程序的功能是点击任意一个button会调用对应的方法,弹窗显示对应的button被点击,点击button1和button3会正常弹窗,点击button2的时候却发现没有弹窗,这是为何?

这个问题涉及到js的加载问题,html文档是从上到下加载,button1.click是写在ready块中,等到dom树解析完毕后才会执行,事件会绑定到对应的节点上,点击正常弹窗提示。

button2.click没有写在ready块中,在dom树还没开始解析就已经执行,会出现事件没有绑定到对应的dom节点上的问题,点击时候由于事件与节点并未绑定,所以无法正常弹窗。

button3.click是写在body代码块后面,html从上到下执行,执行到这里时,dom树已经解析完成,事件也会绑定到对应的节点上,点击正常弹窗提示。

参考:https://www.cnblogs.com/2huos/p/js-autorun.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值