1 常用事件
- click() 鼠标单击
- blur() 元素失去焦点
- focus() 元素获得焦点
- mouseover() 鼠标进入(进入子元素也触发)
- mouseout() 鼠标离开(离开子元素也触发)
- ready() DOM加载完成
注: 文档对象模型(Document Object Model,简称DOM)
2 代码示例
<script src="js/jquery-1.12.4.min.js"></script>
<script>
$(function(){
var $lis = $("ul li");
var $btn = $("#btn1");
var $txt = $("#txt1");
var $div = $("div");
// 添加点击事件
$lis.click(function(){
// 设置当前点击的标签对象为红色
$(this).css({"color":"red"});
// 获取点击标签的索引
alert($(this).index());
});
$btn.click(function(){
// 获取文本框的内容
alert($txt.val());
});
// 获取焦点事件
$txt.focus(function(){
$(this).css({"background":"red"});
});
// 失去焦点事件
$txt.blur(function(){
$(this).css({"background":"white"});
});
// 鼠标进入事件
$div.mouseover(function(){
$(this).css({"background":"green"});
});
// 鼠标离开事件
$div.mouseout(function(){
$(this).css({"background":"white"});
});
});
</script>
</head>
<body>
<div>
<ul>
<li>苹果</li>
<li>鸭梨</li>
<li>香蕉</li>
</ul>
<input type="text" id="txt1">
<input type="button" id="btn1" value="按钮">
</div>
</body>
</html>
3 事件代理
- 事件冒泡: 事件会向它的父级一级级传递
- 事件代理: 利用事件冒泡的原理, 把事件加到父级标签上, 通过判断事件来源, 执行相应的子元素的操作. 事件代理可以极大减少事件绑定次数, 提高性能; 让新加入的子元素也可以拥有相同的操作