jQuery中事件与动画的总结分享


Posted in Javascript onMay 24, 2016

1.加载DOM

1.1.window事件

window.onload=function(){}.... 时机:其他资源都加载完毕后,再执行

$(function(){}) ……:只是等待标签完毕,即可执行

区别:前者在HTML页面中只能解析最后一个,二后者是N个

window.onload() = function () {

    }
    $(function () {
      $("li").bind("click", function () {
        $(this).css("background","red");
      });
    });
    $(function () {
      $("div").bind("click", function () {
        $(this).css("background", "red");
      });
    });

第一部分--事件

2.鼠标事件

2.1 常用鼠标事件的方法

click() :单击事件、触发或将函数绑定到指定元素的click事件

mouseover(): 触发或将函数绑定到指定元素的mouseover事件

mouseout() :触发或将函数绑定到指定元素的mouseout的事件

经典的光棒效果:

$(function () {
      $("input").click(function () {
        $("li").mouseover(function () {
          $(this).css("background", "green");
        }).mouseout(function () {
          //this.style.background = "";
          this.style.cssText = "background:";
        });
      });
    });

3.键盘事件

3.1 常用键盘事件的方法

keydown(): 按下按键时、触发或将函数绑定到指定元素的keydown事件

keyup():  释放按键时、触发或将函数绑定到指定元素的keyup事件

keypress(): 产生可打印的字符时、触发或将函数绑定到指定元素的keypress事件

$(function () {
      $("p input").keyup(function () {
        $("#events").append("keyup");
      }).keydown(function () {
        $("#events").append("keydown");
      }).keypress(function () {
        $("#events").append("keypress");
      });
      $(document).keydown(function (event) {
        if (event.keyCode == "13") {
          //按enter键
          alert("确认要提交么?");
        }
      });
    });

4.表单事件

4.1 常用表单事件的方法

focus() : 获得焦点、触发或将函数绑定到指定元素的focus事件

blur() : 失去焦点、触发或将函数绑定到指定元素的blur事件

$(function () {
        //给文本框添加边框样式
        $("input").focus(function() {
          $(this).addClass("myclass");
        }).blur(function() {
          $(this).removeClass("myclass");
        });
    });

5.绑定事件与移除事件

5.1 绑定事件

语法:

bind(type,[data],fn),其中data不是必需的

type:事件类型、主要包括blur、focus、click、mouseout等基础事件,此外也还可以是自定义事件

fn :用来绑定的处理函数

$(function () {      //给li绑定click事件、并进行样式修改
      $("li").bind("click", function () {
        $(this).css("background","red");
      });
    });

 5.2 同时绑定多个事件

$(function () {
      $("li").bind({
        mouseover: function() {
          $(this).css("background", "pink");
        }, mouseout: function() {
          $(this).css("background", "gray");
        }
      });
    });

5.3 移除事件与同时移除多个事件

unbind([type],[fn]) 与绑定事件刚好相反,如果方法没有参数则表示移除全部的事件

unbind如果要移除多个只需在两两之间添加一个空格即可

$(function () {
      $("li").unbind("click");      $("li").unbind("mouseover mouseout");
    });

5.4 一些其他的绑定与移除的方法

1.live() unbind()

2.on()  jQuery1.7版本之后才有的方法 off()

3.delegate() undelegate()

6. 复合事件

6.1 hover()方法

语法:

hover(enter,leave);  该方法相当于mouseover与mouseout事件的组合

$("li").hover(function() {
        $("li").css("background", "gray");
      }, function() {
        $("li").css("background", "green");
      });

6.2 toggle()方法

语法:

toggle(fn1,fn2,……,fnN);  该方法用于模拟鼠标连续click事件,单鼠标单击一次就执行一个fn,从头开始按顺序执行,tolgge()使用的隐藏域属于

display,它在浏览器中是不占用位置的,与它相同的visibility是占用的

$("body").toggle(function () {
        $("li").css("background", "gray");
      }, function () {
        $("li").css("background", "green");
      }, function () {
        $("li").css("background", "blue");
      });

接下来再看看第二部分--动画

1. 控制元素显示与隐藏

语法:

$(select).show([speed],[callback]);

与show()方法相对的是hide()方法,该方法可以控制元素隐藏。

语法:

$(select).hide([speed],[callback]); 除了可以控制元素的隐藏外,还能定义隐藏元素时的效果,如隐藏速度

注意:绝大多数情况下,hide()方法与show()方法总是在一起使用 

2. 控制元素透明度

2.1 控制元素淡入

语法:

$(select).fadeIn([speed],[callback]);

与show()方法相对的是fadeOut()方法,该方法可以控制元素淡出。

3. 改变元素高度

3.1 方法 slideUp()和slideDown()

slideDown()会将元素从上向下延伸显示,slideUp()方法正好相反,元素会从下到上缩短直至隐藏。

 

$(function () {
      $("#btnshow").click(function () {
        $("img").show(1000);
      });
      $("#btnhide").click(function () {
        $("img").hide(1000);
      });
    });
    $(function () {
      $("#btnin").click(function () {
        $("img").fadeIn(5000);
      });
      $("#btnout").click(function () {
        $("img").fadeOut(5000);
      });
    });
    $(function () {
      $("#btnup").click(function () {
        $("img").slideUp(5000);
      });
      $("#btndown").click(function () {
        $("img").slideDown(5000);
      });
    });

 4.animate()方法是用来自定义动画的

当我们需要对动画有更多的控制时,使用animate()方法能够更具有灵活性,因为它可以替换其他所有的方法

$(function () {
      $("[type=button]").bind("click", function () {
        //两个特效并行执行,不加入队列:
        $("div").
        animate({ "font-size": "50px" }, 3000)
        .animate({ "width": "300px" }, { queue: false, duration: 3000 });
      });
    });

 4.1 animate()方法替换一些其他的方法

//替换show()方法
        //$("img").show(1000);
        $("img").animate({height:"show",width:"show",opacity:"show"},1000);
        //替换fadeIn()方法
        $("img").fadeIn(5000);
        $("img").animate({opacity:"show"},5000);
 
        //替换slideDown()方法        $("img").slideDown(5000); 
        $("img").animate({ height: "show" }, 5000);

这些动画就是animate()方法的一种内置了特定样式的简写形式,这些特定的样式值可以为"show"、"hide"、"toggle",也可以自定义数值

jQuery中事件与动画的总结分享

$("div").click(function() { $(this).next().toggle(); $(this).next().fadeTo(600,0.2); $(this).next().fadeToggle(); $(this).next().slideToggle(); }); 

以上这篇jQuery中事件与动画的总结分享就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Js 中debug方式
Feb 07 Javascript
网页中CDATA标记的说明
Sep 12 Javascript
jQuery实现动画效果的简单实例
Jan 27 Javascript
详谈JavaScript 匿名函数及闭包
Nov 14 Javascript
JavaScript希尔排序、快速排序、归并排序算法
May 08 Javascript
JS把内容动态插入到DIV的实现方法
Jul 19 Javascript
浅谈js的html元素的父节点,子节点
Aug 06 Javascript
jquery移除了live()、die(),新版事件绑定on()、off()的方法
Oct 26 Javascript
详解jQuery lazyload 懒加载
Dec 19 Javascript
基于twbsPagination.js分页插件使用心得(分享)
Oct 21 Javascript
vue之将echart封装为组件
Jun 02 Javascript
解决layer弹层遮罩挡住窗体的问题
Aug 17 Javascript
jQuery根据表单name获取值的方法
May 24 #Javascript
深入理解jquery自定义动画animate()
May 24 #Javascript
深入理解jquery中的事件与动画
May 24 #Javascript
Jquery元素追加和删除的实现方法
May 24 #Javascript
jquery html动态添加的元素绑定事件详解
May 24 #Javascript
js和jQuery设置Opacity半透明 兼容IE6
May 24 #Javascript
浅析jquery unbind()方法移除元素绑定的事件
May 24 #Javascript
You might like
使用Discuz关键词服务器实现PHP中文分词
2014/03/11 PHP
php中引用&的用法分析【变量引用,函数引用,对象引用】
2016/12/12 PHP
PHP实现APP微信支付的实例讲解
2018/02/10 PHP
tp5.1 框架数据库高级查询技巧实例总结
2020/05/25 PHP
js option删除代码集合
2008/11/12 Javascript
JavaScript 对象、函数和继承
2009/07/07 Javascript
JavaScript 捕获窗口关闭事件
2009/07/26 Javascript
js实现发送验证码后的倒计时功能
2015/05/28 Javascript
详细解读JavaScript的跨浏览器事件处理
2015/08/12 Javascript
js实现带缓冲效果的仿QQ面板折叠菜单代码
2015/09/06 Javascript
jQueryUI DatePicker 添加时分秒
2016/06/04 Javascript
js实现固定宽高滑动轮播图效果
2017/01/13 Javascript
D3.js中强制异步文件读取同步的几种方法
2017/02/06 Javascript
laravel5.4+vue+element简单搭建的示例代码
2017/08/29 Javascript
iframe高度自适应及隐藏滚动条的实例详解
2017/09/29 Javascript
JavaScript 跨域之POST实现方法
2018/05/07 Javascript
Vue.js 中 axios 跨域访问错误问题及解决方法
2018/11/21 Javascript
JavaScript变速动画函数封装添加任意多个属性
2019/04/03 Javascript
jQuery实现简单弹幕效果
2019/11/28 jQuery
javascript canvas检测小球碰撞
2020/04/17 Javascript
[45:46]2014 DOTA2国际邀请赛中国区预选赛5.21 HGT VS DT
2014/05/23 DOTA
Python操作mongodb的9个步骤
2018/06/04 Python
python实现抖音点赞功能
2019/04/07 Python
python区块及区块链的开发详解
2019/07/03 Python
python 调用pyautogui 实时获取鼠标的位置、移动鼠标的方法
2019/08/27 Python
Python流程控制 if else实现解析
2019/09/02 Python
详解python中GPU版本的opencv常用方法介绍
2020/07/24 Python
详解Python中import机制
2020/09/11 Python
Python使用内置函数setattr设置对象的属性值
2020/10/16 Python
详解px单位html5响应式方案
2018/03/08 HTML / CSS
工商管理专业自荐信
2014/06/03 职场文书
《中国梦我的梦》大学生演讲稿
2014/08/20 职场文书
接收函格式
2015/01/30 职场文书
小升初自荐信范文
2015/03/05 职场文书
python基础之模块的导入
2021/10/24 Python
Golang数据类型和相互转换
2022/04/12 Golang