Jquery-事件

jQuery 是为事件处理特别设计的。 页面对不同访问者的响应叫做事件。 事件处理程序指的是当 HTML 中发生某些事件时所调用的方法。 实例:

  • 在元素上移动鼠标。
  • 选取单选按钮
  • 点击元素

在事件中经常使用术语”触发”(或”激发”)例如: “当您按下按键时触发 keypress 事件”。 常见 DOM 事件:

鼠标事件

键盘事件

表单事件

文档/窗口事件

click

keypress

submit

load

dblclick

keydown

change

resize

mouseenter

keyup

focus

scroll

mouseleave

blur

unload

jQuery 事件方法语法

在 jQuery 中,大多数 DOM 事件都有一个等效的 jQuery 方法。 页面中指定一个点击事件:

1
$("p").click();

下一步是定义什么时间触发事件。您可以通过一个事件函数实现:

1
$("p").click(function(){ // 动作触发后执行的代码!! });

常用的 jQuery 事件方法

$(document).ready()

$(document).ready() 方法允许我们在文档完全加载完后执行函数。

click()

click() 方法是当按钮点击事件被触发时会调用一个函数。 该函数在用户点击 HTML 元素时执行。 在下面的实例中,当点击事件在某个

元素上触发时,隐藏当前的

元素:

实例

1
$("p").click(function(){ $(this).hide(); });

dblclick()

当双击元素时,会发生 dblclick 事件。 dblclick() 方法触发 dblclick 事件,或规定当发生 dblclick 事件时运行的函数:

实例

1
$("p").dblclick(function(){ $(this).hide(); });

mouseenter()

当鼠标指针穿过元素时,会发生 mouseenter 事件。 mouseenter() 方法触发 mouseenter 事件,或规定当发生 mouseenter 事件时运行的函数:

实例

1
$("#p1").mouseenter(function(){ alert('您的鼠标移到了 id="p1" 的元素上!'); });

mouseleave()

当鼠标指针离开元素时,会发生 mouseleave 事件。 mouseleave() 方法触发 mouseleave 事件,或规定当发生 mouseleave 事件时运行的函数:

实例

1
$("#p1").mouseleave(function(){ alert("再见,您的鼠标离开了该段落。"); });

mousedown()

当鼠标指针移动到元素上方,并按下鼠标按键时,会发生 mousedown 事件。 mousedown() 方法触发 mousedown 事件,或规定当发生 mousedown 事件时运行的函数:

实例

1
$("#p1").mousedown(function(){ alert("鼠标在该段落上按下!"); });

mouseup()

当在元素上松开鼠标按钮时,会发生 mouseup 事件。 mouseup() 方法触发 mouseup 事件,或规定当发生 mouseup 事件时运行的函数:

实例

1
$("#p1").mouseup(function(){ alert("鼠标在段落上松开。"); });

hover()

hover()方法用于模拟光标悬停事件。 当鼠标移动到元素上时,会触发指定的第一个函数(mouseenter);当鼠标移出这个元素时,会触发指定的第二个函数(mouseleave)。

实例

1
$("#p1").hover( function(){ alert("你进入了 p1!"); }, function(){ alert("拜拜! 现在你离开了 p1!"); } );

focus()

当元素获得焦点时,发生 focus 事件。 当通过鼠标点击选中元素或通过 tab 键定位到元素时,该元素就会获得焦点。 focus() 方法触发 focus 事件,或规定当发生 focus 事件时运行的函数:

实例

1
$("input").focus(function(){ $(this).css("background-color","#cccccc"); });

blur()

当元素失去焦点时,发生 blur 事件。 blur() 方法触发 blur 事件,或规定当发生 blur 事件时运行的函数:

实例

1
$("input").blur(function(){ $(this).css("background-color","#ffffff"); });

一.keypress,keydown,keyup的区别:

1.keydown:在键盘上按下某键时发生,一直按着则会不断触发(opera浏览器除外), 它返回的是键盘代码; 2.keypress:在键盘上按下一个按键,并产生一个字符时发生, 返回ASCII码。注意: shift、alt、ctrl等键按下并不会产生字符,所以监听无效 ,换句话说, 只有按下能在屏幕上输出字符的按键时keypress事件才会触发。若一直按着某按键则会不断触发。 3.keyup:用户松开某一个按键时触发, 与keydown相对, 返回键盘代码. 二.两种常用用法举例

案例1:获取按键代码或字符的ASCII码

1
2
3
$(window).keydown( function(event){
// 通过event.whitch可以拿到按键代码. 如果是keypress事件中,则拿到ASCII码.
} );

案例2:传递数据给事件处理函数

1
语法: jQueryObject.keydown( [[ data ,] handler ] ); data: 通过event.data传递给事件处理函数的任意数据; handler: 指定的事件处理函数; 举例:

// 只允许按下的字母键生效, 65~90是所有小写字母的键盘代码范围.

1
2
3
4
5
var validKeys = { start: 65, end: 90 };
$("#keys").keydown( validKeys, function(event){
var keys = event.data; //拿到validKeys对象.
return event.which >= keys.start && event.which <= keys.end;
} );
  • 版权声明: 本博客所有文章,未经许可,任何单位及个人不得做营利性使用!转载请标明出处!如有侵权请联系作者。
  • Copyrights © 2015-2020 翟天野

请我喝杯咖啡吧~