首页 > 代码库 > 使用jQuery快速高效制作网页交互特效

使用jQuery快速高效制作网页交互特效

jQuery中的事件

1,基础事件

     基础事件又包括  

    a:window事件

       在javaScript中的window事件又  window onl oad = fn(); 和onclick  在jQuery中常用的事件有文档就绪事件,对应的方法ready()

       $(document).ready(fn(){});  

   

    b:鼠标事件

        常用的鼠标事件有:

           click(fn);         单机鼠标时发生,fn表示绑定的函数

           keydown(fn);  鼠标指针移过时,fn表示绑定函数

           blur(fn)          鼠标指针移出时,失去焦点时,所执行的函数

           比如  最常见的光棒事件

           

$(function () {

            //获取所有的li元素
            $("li").mouseover(function () {

                $(this).css("background", "pink");

            });
            //注册事件
            $("li").mouseout(function () {

                $(this).css("background", "");

            });

  });
 <ul>
        <li>一个示例</li>
        <li>二个示例</li>
        <li>三个示例</li>
    </ul>

  

  

    c:键盘事件

        键盘事件指当键盘聚焦到Web浏览器时,用户每次按下或者释放按键时所产生的事件常用的键盘有keydown(),keyup(),keypress()

     //键盘事件
            $("input").keyup(function(event) {

                var s =event.keyCode;
                alert(s);
 //打印键盘的keycode值
}); <h2>键盘事件</h2>
--
<body> <input /><span id="first">注意用词</span>
--

 

  

 

        

 

    d:表单事件

       表单事件是所有事件中最稳定,且支持最稳定的事件之一,除了用户选取单选框,复选框等产生的click事件外,当元素获得焦点时触发focus事件,失去焦点时触发blur事件 

//表单事件
            $("input").focus(function () {
                $("#first").addClass("a");
            })
            $("input").blur(function () {

                $("#first").removeClass("a");
            });
        });
---
<h2>键盘事件</h2> <input /><span id="first">注意用词</span>

 

   e:绑定事件

       绑定事件是指为匹配到的元素同事绑定一个或者多个事件,使用bind()方法

      

      语法:bind(type,[data],,fn)

 

       对应的unbind() 解除事件

      例如:为一个无序列表绑定光棒效果

            $("li").bind({

                "mousemove": function () {

                    $(this).css("background", "blue");

                },      //鼠标移过 获得焦点
                "mouseout": function () {

                    $(this).css("background", "");

                },    //鼠标移出失去焦点
                click: function () {

                    alert(this.innerHTML);
                }



            }).unbind("mouseout mousemove");
                     //解除事件
        });



--<body>
   <ul>
        <li>一个示例</li>
        <li>二个示例</li>
        <li>三个示例</li>
    </ul>
   </body>

 

 

2,复合事件

     hover()和toggle()方法,这两个方法和 ready()方法相似都是jQuery自定义的方法。

        a:hover()方法用于模拟鼠标指针悬停事件

    

    <script src="http://www.mamicode.com/js/jQuery1.11.1.js" type="text/javascript"></script>
    <script>
        $(function () {
            $("#menu").hover(function () {                  //鼠标悬停事件 改变元素css样式
                $("#myacc").css("display", "block");
            }, function () {
                $("#myacc").css("display", "none");
            });
        });
    </script>


 

       通常用在网站导航栏下拉的隐藏效果,相当于鼠标事件的mouseover 和mouseout事件

 

        b:toggle()方法 在1.9以上的jquery都删除了这个事件。 

           toggle()方法相当于鼠标连续单击事件,执行的fn

 $(function () {


            $("#one").toggle(
                function () {

                    $("#two").show();    //控制元素显示

                }, function () {

                    $("#two").hide();   //控制元素隐藏
                }
                );
        });
//产生类似于 导航栏的单击出现再次单击关闭的效果-

 

 3,

     a:控制 元素的显示与隐藏

     在jQuery中,可以使用【show() hide()】控制元素的的显示和隐藏

     属性:【speed】[callback]

     speed的默认的值有slow(0.6s) normal(0.4s) fast(0.2s)

     前者控制元素显示或隐藏的速度,后者是指元素执行完方法后callback的自定义函数

----
$(function () {

           

            $("body").click(function () {
                $("img").show("slow");            //单击窗体  一图片以slow方式显现出来

            });

        });

----


--省略部分代码
 
<img src="http://www.mamicode.com/1.jpg">

 

 

   b:相似的方法还有控制元素的淡入淡出分别对应fadein()和fadeout()

   对应语法是$(selector).fadein([speed],[callback])   --以淡出的方法控制元素

                 $(selector).fadeout([speed],[callback])--控制元素淡出

   

    c:改变元素高度的方法

       slideDown(),slideUp(),

        语法类似

        

 

使用jQuery快速高效制作网页交互特效