zoukankan      html  css  js  c++  java
  • JQuery动画与事件

    本章目标

      使用常用简单事件制作网页特效

      使用鼠标事件制作主导航特效

      使用hover( )方法制作下拉菜单特效

      使用鼠标事件及动画制作页面特效

    网页中的事件

      和WinForm一样,在网页中的交互也是需要事件来实现的,例如tab切换效果,可以通过鼠标单击事件来实现

    jQuery中的事件

    基础事件
        鼠标事件
        键盘事件
        window事件

        表单事件

    复合事件
        鼠标光标悬停

        鼠标连续点击

    鼠标事件

      条件 描述 执行时机
      click( ) 触发或将函数绑定到指定元素的click事件  
      mouseover( ) 触发或将函数绑定到指定元素的mouseover事件 鼠标指针移过时
      mouseout( ) 触发或将函数绑定到指定元素的mouseout事件 鼠标指针移出时
      mouseenter( ) 触发或将函数绑定到指定元素的mouseenter事件 鼠标指针进入
      mouseleave( ) 触发或将函数绑定到指定元素的mouseleave事件 鼠标指针离开时
    示例:
    //使用mouseover事件给导航项目改变背景颜色
    $(".nav-ul a").mouseover(function() {
    $(this).css("background-color","#f01e28");
    })
    //使用mouseout事件给导航项目还原背景颜色
    $(".nav-ul a").mouseout(function(){
    $(this).css("background-color","#ff2832");
    })


    鼠标事件方法的区别
    方法 相同点 不同点
      mouseover( )
      mouseenter( ) 鼠标进入被选元素时会触发 鼠标在其被选元素的子元素上来回进入时:
      触发mouseover( )
      不触发mouseenter
      mouseout( ) 
      mouseleave( ) 鼠标离开被选元素时会触发 鼠标在其被选元素的子元素上来回离开时:
      触发mouseout
      不触发mouseleave


    键盘事件

    方法 描述 执行时机
      keydown( ) 触发或将函数绑定到指定元素的keydown事件 按下键盘时
      keyup( ) 触发或将函数绑定到指定元素的keyup事件 释放按键时
      keypress( ) 触发或将函数绑定到指定元素的keypress事件 产生可打印的字符时
    示例:
    $(document).ready(function () {
    $("[type=password]").keydown(function(){
    //append方法是在被选元素内部插入指定内容
    $("#events").append("keydown")
    }).keyup(function() {
    $("#events").append("keyup")
    }).keypress(function(){
    $("#events").append("keypress")
    })

    $(document).keydown(function(event) {
    console.log(event);

    if(event.keyCode == 13) {
    alert ("确认要提交吗?")
    }
    })
    });


    浏览器事件

      语法:$(selector).resize( );

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

     

    绑定事件与移除事件

    绑定事件                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        

      bind(type,[data],fn);
      type:事件类型,主要包括click、mouseover、mouseout等基础事件,此外,还可以是自定义事件

      [data]:可选函数

      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( )方法
      toggle( )方法

      hover( )方法

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

      语法:

        hover(enter,leave);

    示例:

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

    toggle()方法

      语法:

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

    示例:

      $("input").toggle(
            function(){$("body").css("background","#ff0000");},
            function(){$("body").css("background","#00ff00");},
            function(){$("body").css("background","#0000ff");}
        )

     

      toggle()方法2-2

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

      toggleClass( )可以对样式进行切换

      语法:

        toggleClass(className);

    示例:

      $("input").click(function(){$("p").toggleClass("red");})

    小结:

      toggle( )和toggleClass( )总结
      toggle( fn1,fn2...)实现单击事件的切换,无须额外绑定click事件
      toggle( )实现事件触发对象在显示和隐藏状态之间切换
      toggleClass( )实现事件触发对象在加载某个样式和移除某个样式之间切换

     

    jQuery动画效果

      jQuery提供了很多动画效果
      控制元素显示与隐藏
      改变元素的透明度
      改变元素高度
      自定义动画

     

    控制元素的显示及隐藏

      语法:$(selector).show([speed],[callback])
           $(selector).hide([speed],[callback])、

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

        callback:可选.fadeIn函数执行完之后,要执行的函数。除非设置了speed参数,否则不能设置该参数

     

    改变元素的透明度

    语法:

        $(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属性

      speed:可选,规定效果时长,取值:毫秒、fast、slow

      callback:可选,滑动完成后执行的函数名称

  • 相关阅读:
    线程同步
    毕业答辩
    论文查重
    shell无名管道线的实现(父子进程实现对管道的一端读另一端写)
    并查集
    操作系统中的fork()函数对应的进程创建过程
    柠檬水找零问题
    环形链表
    删除排序数组中的重复项
    关于两数之和的算法
  • 原文地址:https://www.cnblogs.com/wangdayexinyue/p/11040834.html
Copyright © 2011-2022 走看看