jQuery中的事件
- jQuery事件是对JavaScript事件的封装,常用事件分类
- 基础事件
鼠标事件
键盘事件
window事件
表单事件 - 复合事件
鼠标光标悬停
鼠标连续点击
鼠标事件
- 鼠标事件方法的区别
键盘事件
- 用户每次按下或者释放键盘上的键时都会产生事件,常用键盘事件
浏览器事件
- 调整窗口大小时,完成页面特效
- 语法:$(selector).resize( );
index([selector|element]) 返回值:Number
- 搜索匹配的元素,并返回相应元素的索引值,从0开始计数。
- selector:一个选择器,代表一个jQuery对象,将会从这个对象中查找元素。
- element:获得 index 位置的元素。可以是 DOM 元素或 jQuery 选择器。
绑定事件
- 语法:bind(type,[data],fn);
- type:事件类型,主要包括click、mouseover、mouseout等基础事件,此外,还可以是自定义事件。
- [date]:可选函数。
- fn:处理函数。
- 绑定单个事件示例:
$(document).ready(function(){
$(".on").bind("mouseover",function(){
$(".topDown").show();
});
});
$(".top-m .on").bind({
mouseover:function(){
$(".topDown").show();
},
mouseout:function(){
$(".topDown").hide();
}
});
移除事件
- 语法:unbind([type],[fn])
- type:事件类型,主要包括:blur、focus、click、mouseout等基础事件,此外,还可以是自定义事件。
- [fn]:处理函数。
- 当unbind()不带参数时,表示移除所绑定的全部事件。
复合事件
- hover()方法相当于mouseover与mouseout事件的组合。一个模仿悬停事件的方法。鼠标移动到一个匹配的元素上面时,会触发指定的第一个函数。当鼠标移出这个元素时,会触发指定的第二个函数。
- 语法:hover([over],out);
- over:鼠标移到元素上要触发的函数。
- out:鼠标移出元素要触发的函数
- 示例:
$(".top-m .on").hover(
function(){
$(".topDown").show();
},
function(){
$(".topDown").hide();
}
);
- toggle()方法用于模拟鼠标连续click事件。
- 语法:toggle(fn1,fn2,…,fnN);
- 参数里面有多个方法,每点击一次就会依次触发一个方法执行。
- toggle() 方法在 jQuery 版本 1.8 中被废弃,在版本 1.9 中被移除。可以使用网络版:
<script src="https://cdn.staticfile.org/jquery/1.7/jquery.min.js" type="text/javascript"></script>
或者来我网盘下载提取码:0000 - 示例:
$("p").toggle(
function(){$("p").css({"color":"red"});},
function(){$("p").css({"color":"blue"});},
function(){$("p").css({"color":"green"});
});
- toggle()方法不带参数,与show( )和hide( )方法作用一样。用于显示或隐藏。
- 示例:
$("input").click(function(){$("p").toggle();})
- toggleClass( )可以对样式进行切换
- 语法:
toggleClass(className);
$("input").click(function(){$("p").toggleClass("类选择器名称");})
- 小结:toggle( )和toggleClass( )的区别:
- toggle( fn1,fn2…):实现单击事件的切换,无须额外绑定click事件
- toggle( ):实现事件触发对象在显示和隐藏状态之间切换。
- toggleClass( ):实现事件触发对象在加载某个样式和移除某个样式之间切换。
jQuery动画效果
- show() 控制元素的显示,hide( )控制元素的隐藏。
- 语法:$(selector).show([speed],[callback])
- 语法:$(selector).hide([speed],[callback])
- [speed]:可选。表示速度,默认为“0”,可能值:毫秒(如1000)、slow、normal、fast。
- [callback]:可选。show函数执行完之后,要执行的函数
- 改变元素的透明度
- fadeIn()和fadeOut()可以通过改变元素的透明度实现淡入淡出效果。
- 语法:$(selector).fadeIn([speed],[callback])
- 语法:$(selector).fadeOut([speed],[callback])
- [speed]:可选。表示速度,默认为“0”,可能值:毫秒(如1000)、slow、normal、fast。
- [callback]:可选。show函数执行完之后,要执行的函数。
- 改变元素的高度
- slideDown() 可以使元素逐步延伸显示。
- slideUp()则使元素逐步缩短直至隐藏。
- 语法:$(selector).slideUp ([speed],[callback])
- 语法:$(selector).slideDown ([speed],[callback])
- 示例:
$(document).ready(function() {
$("h2").click(function(){
$(".txt").slideUp("slow");
$(".txt").slideDown("slow");
});
});
自定义动画
- 语法:$(selector). animate({params},speed,callback)
- {params}:必须,定义形成动画的CSS属性。
- 更多学习请查阅API