一,jquery中的事件

(1).执行时机
$(document).ready()和window.onload方法有相似的功能,但是在执行时机方面有区别,windwo.onload在网页中所有的元素包括所有的关联文件都加载后才执行,而前者是dom元素就绪时就可以被调用了。不必等到所有关联的文件全部加载。
2.多次使用
3.简写方式
$(document).ready(function()){
code
}
被$(function(){ })
(2)事件的绑定
bind(type[,data],fn);
参数类型: blur,focus,load,resize,scroll,unload,click,mousedown,mouseover,change,select,submit,keydown,error。。。
第2个参数可选,event.data属性值传递给事件对象的额外数据对象。
第3个参数则是用来绑定的处理函数。
1.基本效果
$("p").bind("click",function(){函数体})
2.加强效果
实现点击后在显示和隐藏之间的切换
3.改变绑定事件的类型
将click转换成mouseovr和mouseout
$("p").bind("mouseover",function(){$("this").next("div.content").show()})当鼠标滑过时显示内容
4.简写绑定的事件
$(function(){
$("p").mouseover(function(){函数体显示})
})
(3)合成事件
1.hover()方法
        语法结构:hover(enter,leave);
模拟光标悬停事件,当光标移动到元素上的时候,会触发指定的第1个函数enter,当移出这个元素时,会触发指定的第2个函数leave
hover准确来说是替代jquery中的bind(“mouseenter”)和bind("mouseleave"),而不是替代bind("mouseover")和bind("mouseout"),因此当需要触发hover()方法的第2个函数时,需要用trigger(“mouseleave”)来触发,而不是trigger(“mouseout”)。
2.toggle()方法
toggle(fn1,fn2,...fnN);
模拟鼠标连续单击事件。第一次单击元素,触发指定的第1个函数fn1,当再次单机同一元素时,则触发指定的第2个函数fn2.
另外一个作用是切换元素的可见状态,隐藏和显示
3.再次加强效果
增加高亮效果   addclass()方法  和removeclass()方法  切换
(4)事件冒泡
页面中多个元素均绑定了此事件  从子元素相父元素方向执行事件,就叫冒泡
解决办法采用事件对象
$("element").bind("click",function(event){
code
})
当单击此元素时,这个对象就被创建了,当事件处理函数执行完毕后,事件对象就被销毁了
停止事件冒泡
可以组织事件中其他对象的事件处理函数被执行。stopPropagation()方法,
..function(event){...event.stopPropagation()...}
阻止默认行为
网页中的元素都有自己默认的行为。单击提交按钮后表单会提交,有时候需要阻止元素的默认行为。
preventDefault()方法来阻止元素的默认行为
如果相同时对事件对象停止冒泡和默认行为可以再事件处理函数中返回false。
return false;
(5)事件对象的属性
1.event.type()
可以获取到事件的类型
click还是mouseover等等
2.event.preventDefault()  阻止默认
3.event.stopPropagation() 阻止冒泡
4.event.target()  获取到触发事件的元素
5.event.relatedTarget()  相关元素
6.event.pageX   event.pageY获取相对于页面的x坐标和y坐标
7.event.which()鼠标的左,中,右键
8.event.metaKey()键盘事件中获取ctrl按键
9.event.originalEvent()方法
(6)移除事件
1.移除按钮上以前注册的事件
unbind(“click”)或者unbind()
2.移除其中一个事件
myfun1=function(){}
$(".btn").unbind(“click”,myfun1)
one()方法   只执行一次,之后自行删除
 
(7)模拟操作
1.常用模拟
有时需要通过模拟用户操作,来达到例如单击的效果。
trigger()方法来完成模拟操作。
例子:$('#btn').trigger("click")
可以简写
$('#btn').click();
2.触发自定义事件
trigger()不仅能触发浏览器支持的具有相同名称的事件,也可以触发自定义名称的事件
例子:$('#btm').bind("myclick",function(){ $('#test').append("<p>我的自定义事件</p>");})
触发此事件,$('#btn').trigger("myclick");
3.传递数据
trigger(type[,data])方法有两个参数,1为事件类型,2为传递个事件处理函数的额附加数据,以数组形 式传递。
$('#btn').trigger("mycklik",["我的自定义","事件"]);
传递两个数据
4.执行默认操作
trigger()触发事件后,会执行浏览器默认操作。
$("input").trigger("focus");
不仅会触发为input元素绑定的focus事件,也会使input元素本身得到焦点(浏览器默认操作)
如果不想浏览器默认操作,使用triggerHandler()方法
$("input").triggerHandler("focus");
(8)其他用法
1.绑定多个事件类型
例子:$("div").bind("mouseover mouseout",function(){
$(this).toggleClass("over");
})
等同于去掉mouseout在后面再加上
.bind("mouseout",function(){
$(this).toggleClass("over");
})
2.添加事件命名空间,便于管理
在所绑定的事件类型后面添加命名空间,这样在删除事件时只需要指定命名空间即可。
例子:$(function(){
$("div").bind("click.plugin",function(){
$("body").append("<p>click事件</p>");
})
$("button").click(function(){
$("div").unbind(".plugin");
})
})
plugin的命名空间被删除,而不再plugin的命名空间的dbclick事件依然存在。
3.相同事件名称,不同命名空间执行方法
可以为元素绑定相同的事件类型,然后以命名空间的不同按需调用,jquery代码
$(function(){
$("div").bind("click",function()
{
$("body").append("<p>click事件</p>");
})
$("div").bind("click.plugin",function()
{
$("body").append("<p>click.plugin事件</p>");
})
$("button").click(function(){
$("div").trigger("click!");
})
 
})
最后的感叹号的作用是匹配所有不包含在命名空间中的click方法。
二.jquery中的动画
(1).show()方法和hide()方法 显示和隐藏
(2).fadein()方法和fadeout()方法 改变元素的不透明度 in为提高 out为降低
(3).slideUp()方法和slideDown()方法 改变元素的高度 滑动
(4).自定义动画方法animate()
animate(params,speed,callback);
第1个一个包含样式属性即值的映射,例如property1:value1,property2:value2
第2个speed:速度 可选参数
第3个callback 在动画完成时执行的函数 可选
1.自定义简单动画
设置元素的position absolute或者relative
$(this).animate({left:"500px"},3000);
2.累加,累减动画
$("this").animate({left:"+=500px"},300);
在当前位置累加500px
3.多重动画
同时执行多个动画 或按顺序执行多个动画
animage({left:"500px",height:"200px"},3000);
4.综合动画
位置,高度,透明度都变化
5.动画回调函数
$("#element").slideDown("normal",function(){
//在效果完成之后做其他的事情
})
****6.停止动画和判断是否处于动画状态
停止元素的动画 stop([clearQueue][,gotoEnd]);
判断元素是否处于动画状态
if(!$(element).is(":animated")){
//判断元素是否正处于动画状态
}
(7)其他动画方法
toggle(speed,[callback]) 可见
slideToggle(speed,[callback]) 滑动 调整元素的高度
fadeTo(speed,opacity,[callback]) 不透明度以渐进的方式调整到指定的值
(8)动画方法概括 略
 
 

第3章 jquery中的事件和动画的更多相关文章

  1. 第三章 jQuery中的事件与动画

    第三章jQuery中的事件与动画 一. jQuery中的事件 jQuery事件是对javaScript事件的封装. 1.基础事件 在javaScript中,常用的基础事件有鼠标事件.键盘事件.wind ...

  2. JQuery制作网页—— 第七章 jQuery中的事件与动画

    1. jQuery中的事件: ●和WinForm一样,在网页中的交互也是需要事件来实现的,例如tab切换效果,可以通过鼠标单击事件来实现 ●jQuery事件是对JavaScript事件的封装,常用事件 ...

  3. 第4章 jQuery中的事件和动画

    4.1 jQuery中的事件 4.1.1 加载DOM jQuery就是用 `$(document).ready()方法来代替传统JavaScript的window.onload方法的. 1.执行时机 ...

  4. 第七章 jQuery中的事件与动画

    事件的分类 基础事件: 鼠标事件 键盘事件 window事件 表单事件 复合事件: 鼠标光标悬停 鼠标连续点击 基础事件: 实例: mouseenter()和mouseover()用法的区别: mou ...

  5. jQuery中的事件和动画——《锋利的jQuery》(第2版)读书笔记2

    第4章 jQuery中的事件和动画 jQuery中的事件 加载DOM $(document).ready(function(){   // 编写代码... }); 可以简写成: $(function( ...

  6. jQuery中的事件与动画<思维导图>

    Javascript和HTML之间的交互是通过用户和浏览器操作页面时引发的事件来处理的.当文档或者它的某些元素发生某些变化或操作时,浏览器会自动生成一个事件.例如当浏览器装载完一个文档后,会生成事件. ...

  7. jQuery中的事件和动画 以及视频展示效果实例

    经过这几天学习jQuery中的事件和动画,对jQuery更深的认识,接下来先把视频展示效果的代码贴出来,最后把我在学习jQuery事件和动画之后总结的思维导图 <!doctype html> ...

  8. jQuery中的事件与动画 (你的明天Via Via)

    众所周知,页面在加载时,会触发load事件:当用户单击某个按钮时,会触发该按钮的click事件. 这些事件就像日常生活中,人们按下开关,灯就亮了(或者灭了),往游戏机里投入游戏币就可以启动游戏一样, ...

  9. Jquery中的事件和动画

    在学习Jquery中的过程中我们绝大部分都用到了事件的操作,也可以说事件是Jquery中必不可少的一部分,我们常见的一些事件有单击事件,鼠标事件,键盘事件等等.在Jquery中的学习中为了能使让页面以 ...

随机推荐

  1. PHP超全局变量、魔术变量和魔术方法

    PHP超全局变量 $_GET 通过get方式传递的值(通过 URL 参数传递给当前脚本的变量的数组.) $_POST 通过post形式传递的值(当 HTTP POST 请求的 Content-Type ...

  2. WinForm form属性

    一.布局 Autostroll   控件内容大于可见区域是否自动显示滚动条 Maximumsize 窗体可调到最大尺寸 minimumsize  窗体可调到最小尺寸 size  窗体看到的尺寸 Sta ...

  3. Iterator中的next()

    DBExchangeMoney类: 1 package com.ch.test15; import java.sql.DriverManager; import java.sql.ResultSet; ...

  4. 2015 ACM/ICPC Asia Regional Changchun Online Pro 1005 Travel (Krsukal变形)

    Travel Time Limit: 1500/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total Su ...

  5. codeforecs Gym 100286B Blind Walk

    交互式程序,要用到一个函数fflush,它的作用是对标准输出流的清理,对stdout来说是及时地打印数据到屏幕上,一个事实:标准输出是以『行』为单位进行的,也即碰到\n才打印数据到屏幕.这就可能造成延 ...

  6. intellij idea自定义快捷键

    intellij idea自定义快捷键比较简单,自带. 首先进入idea,File-->Settings-->Live Templates. 点击右上方的“+”,第一次需要创建一个分组. ...

  7. HTML5新增的音频标签、视频标签

    我们所说的H5就是我们所说的HTML5中新增的语言标准 一.音频标签 在HTML5当中有一个叫做audio的标签,可以直接引入一段音频资源放到我们的网页当中 格式: <audio autopla ...

  8. Python 求两个文本文件以行为单位的交集 并集 差集

    Python 求两个文本文件以行为单位的交集 并集 差集,来代码: s1 = set(open('a.txt','r').readlines()) s2 = set(open('b.txt','r') ...

  9. 《毛毛虫组》【Alpha】Scrum meeting 4

    第二天 日期:2019/6/17 1.1 今日完成任务情况以及遇到的问题. 今日完成任务情况: 货物入库管理模块设计: (1)对数据库表--tb_OutStore进行修改并完善: (2)学习trig_ ...

  10. java基础——接口与抽象类的区别

    (1)首先接口和抽象类的设计目的就是不一样的.接口是对动作的抽象,而抽象类是对根源的抽象. (2)对于抽象类,一个类只能继承一个抽象类.但是一个类可以同时实现多个接口. (3)接口是公开的,里面不能有 ...