jQuery事件与特效

jQuery事件与特效

jQuery事件

​ 在网页中的交互是需要事件来实现的,jQuery事件是对JavaScript事件的封装,常用的事件可以分为基础事件以及复合事件

基础事件

鼠标事件

是当用户在文档上移动或单击鼠标时产生的事件

方法描述执行时机
click()触发或将函数绑定到指定元素的click事件鼠标单击时
mouseover()触发或将函数绑定到指定元素的mouseover事件鼠标指针移过时
mouseout()触发或将函数绑定到指定元素的mouseout事件鼠标指针移出时
mouseenter()触发或将函数绑定到指定元素的mouseenter事件鼠标指针进入时
mouseleave()触发或将函数绑定到指定元素的mouseleave事件鼠标指针离开时

鼠标事件方法的区别:

相同点:

mouseover()和mouseenter()都是鼠标进入被选元素时会触发,mouseout()和mouseleave()都是鼠标离开被选元素时会触发

不同点:

1.鼠标在其被选元素的子元素上来回进入时,触发mouseover(),不触发mouseenter()

2.鼠标在其被选元素的子元素上来回离开时,触发mouseout(),不触发mouseleave()

键盘事件

用户每次按下或者释放键盘上的键时都会产生事件

方法描述执行时机
keydown()触发或将函数绑定到指定元素的keydown()事件按下键盘时
keyup()触发或将函数绑定到指定元素的keyup()事件释放按键时
keypress()触发或将函数绑定到指定元素的keypress()事件按下产生可打印字符的按键时
浏览器事件

调整窗口大小时,完成页面特效

语法:

$(selector).resize();

复合事件

hover()方法

相当于mouseover()与mouseout()事件的组合

语法:

hover(enter,leave);

enter为鼠标移入时的执行函数

leave为鼠标移出时的执行函数

示例:

$(".top-m .on").hover(function{
	$(".topDown").show();
	},
	function(){
	$(".topDown").hide();
	}
);
toggle()方法

用于模拟鼠标连续click事件

语法:

toggle(fn1,fn2,...,fnN);

toggle()方法不带参数,与show()和hide()方法作用一样

示例:

$("input").toggle(
  function(){$("body").css("backgroundcolor","red");},
  function(){$("body").css("backgroundcolor","green");}
)
toggleClass()

可以对样式进行切换

toggleClass(className);
toggle()与toggleClass()区别

1.toggle(fn1,fn2…)实现单击事件的切换,无须额外绑定click事件

2.toggle()实现事件触发对象在显示和隐藏状态之间切换

3.toggleClass()实现事件触发对象在加载某个样式和移除某个样式之间切换

绑定和移除事件

绑定事件

语法:

bind(type,[data],fn);

type为事件类型,主要包括click、mouseover、mouseout等基础事件,也可以是自定义事件

[data]为可选函数

fn为处理函数

可以绑定单个事件,也可以同时绑定多个事件

示例:

$(".top-m .on").bind({
		mouseover:function(){
				$(".topDown").show();
		},
		mouseout:function(){
				$(".topDown").hide();
		}
})
移除事件

语法:

unbind([type],[fn]);

当unbind不带参数时,表示移除所绑定的全部事件

jQuery动画效果

jQuery提供了很多动画效果

控制元素显示与隐藏

通过show()控制元素的显示,hide()控制元素的隐藏

语法:

$(selector).show([speed],[callback]);
$(selector).hide([speed],[callback])

speed表示速度,默认为"0",可能值:毫秒(如1000)、slow、normal、fast

callback为show或hide函数执行完后要执行的回调函数

示例:

$(".top-m .on").hover(function{
	$(".topDown").show("slow");
	},
	function(){
	$(".topDown").hide("fast");
	}
);
改变元素的透明度

fadeIn()和fadeOut()可以通过改变元素的透明度实现淡入淡出效果

$(selector).fadeIn([speed],[callback])
$(selector).fadeOut([speed],[callback])
改变元素的高度

slideDown()可以使元素逐渐延伸显示

slideUp()可以使元素逐步缩短直至隐藏

$(selector).slideUp([speed],[callback])
$(selector).slideDown([speed],[callback])

示例:

$("h2").click(function(){
	$(".txt").slideUp("slow");
	$(".txt").slideDown("slow");
});
自定义动画

语法:

$(selector).animate({params},speed,callback)

params为定义形成动画的CSS属性

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值