DDR爱好者之家 Design By 杰米

本文实例讲述了JQuery中的常用事件、对象属性与使用方法。分享给大家供大家参考,具体如下:

JQuery中的常用事件

.click()

鼠标单击触发事件,参数可选(data,function)

.dblclick()

双击触发,同上

.mousedown()/up()

鼠标按下/弹起触发事件

.mousemove()

鼠标移动事件

.mouseover()/out()

鼠标移入/移出触发事件

.mouseenter()/leave()

鼠标进入/离开触发事件*

.hover(func1,func2)

鼠标移入调用func1函数,移出调用func2函数

.focusin()

鼠标聚焦到该元素时触发事件

.focusout()

鼠标失去焦点时触发事件

. focus()/.blur()

鼠标聚焦/失去焦点触发事件(不支持冒泡)

.change()

表单元素发生改变时触发事件

.select()

文本元素被选中时触发事件

.submit()

表单提交动作触发*

.keydown()/up()

键盘按键按下/弹起触发

.on()

多事件的绑定

.off()

移除事件的绑定

.trigger(“event”)

触发事件event调用

.triggerHandler()

触发事件,不会冒泡,不会触发默认事件

注:

1、以上事件函数有三种用法:

//直接绑定事件到元素上
$('.target1').keydown(function(e) {
  $("em:first").text(e.target.value)  //通过对象e获取输入的值
});

//传递参数调用函数处理
$("#test").click(11111,function(e) {
  //this指向 div元素
  //e.data => 11111 通过e传递参数数据
});

//手动触发已绑定的点击事件
$elem.click()

2、mouseover与mouseenter区别:不论鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件,称作支持冒泡处理,冒泡处理指子元素与父元素共同定义的事件,在触发子元素时,或者没有定义子元素,事件就会向父级传播,引发父级事件触发。只有在鼠标指针穿过被选元素时,才会触发 mouseenter 事件。

3、form元素是有默认提交表单的行为,如果通过submit处理的话,需要禁止浏览器的这个默认行为。传统的方式是调用事件对象  e.preventDefault() 来处理, jQuery中可以直接在函数中最后结尾return false即可。

  //回车键或者点击提交表单后禁止浏览器默认跳转:
  $('#target2').submit(function() {
    alert('捕获提交表达动作,阻止页面跳转')
    return false;
  });

4、on()使用

基本用法:.on( events ,[ selector ] ,[ data ] )

最常见的给元素绑定一个点击事件,对比一下快捷方式与on方式的不同

$("#elem").click(function(){}) //快捷方式
$("#elem").on('click',function(){}) //on方式

//多个事件绑定同一个函数,通过空格分离,传递不同的事件名,可以同时绑定多个事件
$("#elem").on("mouseover mouseout",function(){ });

//多个事件绑定不同函数
$("#elem").on({
  mouseover:function(){}, 
  mouseout:function(){}
});

//将数据传递到处理程序
$( "button" ).on( "click", {  //第二个参数传递数据给函数调用
 name: "Mr.Tory"
}, greet );
function greet( event ) {
 alert( "Hello " + event.data.name ); //输出Hello Mr.Tory
}

事件对象的属性与方法

.type

事件类型.如果使用一个事件处理函数来处理多个事件, 可以使用此属性获得事件类型,比如click

.data

事件调用时传入额外参数

.target

触发该事件的 DOM 元素

.which

指示按了哪个键或按钮

.timeStamp

该属性返回从 1970 年 1 月 1 日到事件发生时的毫秒数

.pageX/Y

相对于文档左/上边缘的鼠标位置

.result

上一个相同事件处理器函数返回的值

.preventDefalut()

阻止事件的默认动作

.stopPropagation()

取消事件冒泡

$("#content").click(function(event) {
  $("#msg").html("<p>外层div元素被单击</p>");
  event.stopPropagation();             //通过event方法阻止事件冒泡
});

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具 http://tools.jb51.net/code/HtmlJsRun 测试上述代码运行效果。

更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery常见事件用法与技巧总结》、《jQuery常用插件及用法总结》、《jQuery操作json数据技巧汇总》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》及《jquery选择器用法总结》

希望本文所述对大家jQuery程序设计有所帮助。

DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。