码迷,mamicode.com
首页 > Web开发 > 详细

jQuery基础事件

时间:2015-08-09 13:53:26      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:

一.绑定事件
在 JavaScript 课程的学习中, 我们掌握了很多使用的事件, 常用的事件有: click、 dblclick、
mousedown、mouseup、mousemove、 mouseover、mouseout、change、 select、 submit、keydown、
keypress、keyup、blur、focus、load、resize、scroll、error。那么,还有更多的事件可以参考
手册中的事件部分。
jQuery 通过.bind()方法来为元素绑定这些事件。 可以传递三个参数: bind(type, [data], fn),
type 表示一个或多个类型的事件名字符串;[data]是可选的,作为 event.data 属性值传递一个
额外的数据,这个数据是一个字符串、一个数字、一个数组或一个对象;fn 表示绑定到指
定元素的处理函数。
二.简写事件
为了使开发者更加方便的绑定事件,jQuery 封装了常用的事件以便节约更多的代码。 我
们称它为简写事件。

技术分享

函数 描述 html代码 jquery代码 结果
bind(type, [data], fn) 为元素绑定事件 <input type="button" name="name" value="确定" /> $(‘input‘).bind(‘click‘, function () {
    alert(‘事件被执行了!‘);
});
执行按钮的单击事件
调用函数执行单击事件 $(‘input‘).bind(‘click‘,fn);
function fn() {
    alert(‘点击!‘);
}
绑定鼠标移开和单击多个事件 $(‘input‘).bind(‘click mouseover‘, function () {
    alert(‘单击事件‘);
});
鼠标移开和单击多个事件
绑定鼠标移入和移开多个事件 <input type="button" name="name" value="确定" />
<div></div>
$(‘input‘).bind(‘mouseout mouseover‘, function () {
    $(‘div‘).html(function (index,value) {
        return value + ‘1‘;
    });
});
鼠标移入和移开div标签内累加1
通过对象键值对绑定多个参数 $(‘input‘).bind({
    mouseout: function () {
        alert(‘鼠标移出‘);
    },
    mouseover: function () {
        alert(‘鼠标移入‘);
    }
});
鼠标移入和移开执行单击事件
unbind(types,fn) 删除全部事件   $(‘input‘).unbind();  
只删除click事件   $(‘input‘).unbind(‘click‘);  
删除click事件绑定了fn2的   $(‘input‘).unbind(‘click‘, fn2);  
click(fn) 触发每一个匹配元素的 click(单击)事件 <input type="button" name="name" value="确定" /> $(‘input‘).click(function () {
    alert(‘单击事件‘);
});
 
dblclick(fn) 触发每一个匹配元素的 dblclick(双击)事件 $(‘input‘).dblclick(function () {
    alert(‘双击事件‘);
});
 
mousedown(fn) 触发每一个匹配元素的 mousedown(点击后)事件 $(‘input‘).mousedown(function () {
    alert(‘鼠标按下事件‘);
});
 
mouseup(fn) 触发每一个匹配元素的 mouseup(点击弹起)事件   $(‘input‘).mouseup(function () {
    alert(‘鼠标松开事件‘);
});
 
mouseover(fn) 触发每一个匹配元素的 mouseover(鼠标移入)事件   $(‘input‘).mouseover(function () {
    alert(‘鼠标移入事件‘);
});
 
mouseout(fn) 触发每一个匹配元素的 mouseout(鼠标移出)事件   $(‘input‘).mouseout(function () {
    alert(‘鼠标移出事件‘);
});
 

.mouseover()和.mouseout()表示鼠标移入和移出的时候触发。那么 jQuery 还封装了另外
一组:.mouseenter()和.mouseleave()表示鼠标穿过和穿出的时候触发。那么这两组本质上有
什么区别呢?手册上的说明是:.mouseenter()和.mouseleave()这组穿过子元素不会触发,
而.mouseover()和.mouseout()则会触发。

三.复合事件
jQuery 提供了许多最常用的事件效果,组合一些功能实现了一些复合事件,比如切换功
能、智能加载等。
复合事件
方法名 描述
ready(fn) 当 DOM 加载完毕触发事件
hover([fn1,]fn2) 当鼠标移入触发第一个 fn1,移出触发 fn2
toggle(fn1,fn2[,fn3..]) 已废弃,当鼠标点击触发 fn1,再点击触发 fn2...
//背景移入移出切换效果
$(‘div‘).hover(function () {
$(this).css(‘background‘, ‘black‘); //mouseenter 效果
}, function () {
$(this).css(‘background‘, ‘red‘); //mouseleave 效果,可省略
});
注意:.hover()方法是结合了.mouseenter()方法和.mouseleva()方法,并非.mouseover()
和.mouseout()方法。

jQuery基础事件

标签:

原文地址:http://www.cnblogs.com/genesis/p/4714941.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!