jQuery -- 事件

事件指的是页面对操作者动作的响应。例如鼠标的滑过、点击等都属于动作。
jQuery中常用的事件大体分为鼠标事件、键盘事件、表单事件以及窗口事件这4种,可以说这些类型的事件满足了大部份的需求。

基本事件

jQuery中最基本的事件就是页面完全加载时的ready事件了,这基本上是所有函数的起始。

$("document").ready(function)

----------

$("document").ready(function(){

});

鼠标事件

鼠标事件应该算是应用最频繁的事件了,包括鼠标的单击click、双击dblclick、按下mousedown、松开mouseup、鼠标位置mousemove、鼠标滑入mouseover、鼠标滑出mouseout以及和鼠标滑入/滑出相似的mouseenter与mouseleave。
单击与双击

$(document).ready(function(){
    $("#ti1").click(function(){ //鼠标单击事件
        $(this).html("<h3>Click</h3>");
    });
    $("#ti2").dblclick(function(){ //鼠标双击事件
        $(this).html("<h3>Double Click</h3>");
    });
    $(".tc1").mousedown(function(){ //鼠标按下事件
        $(this).html("<h3>MouseDown</h3>");
    });
    $(".tc1").mouseup(function(){ //鼠标松开(弹起)事件
        $(this).html("<h3>MouseUp</h3>");
    });
});

其它的几个鼠标事件应用较少,不再赘述,有兴趣的可以去研究一下。
注意一点:mouseover与mouseenter的区别,mouseover在进入被选元素或任意子元素时都会被触发,而mouseenter只有在进行被选元素时才会触发,所以mouseover可能会触发多次(父子元素之间的over/out),而mouseenter只会触发1次。

focus和blur是一对获取/失去焦点的事件,如下所示:

    $("input").focus(function(){
        $(this).css("background-color","red");
    });
    $("input").blur(function(){
        $(this).css("background-color","white");
    })

表单事件

表单事件应用最多的是submit提交,即表单提交,在许多需要用户注册、填写提交信息的地方都存在表单提交。
submit分为两种,分别是:submit()和submit(function)。用户在提交表单时,可以使用submit()直接提交,也可以使用submit(function)来进行提交,插入一些在提交时想要做的事情。
submit仅适用于表单form。

$(document).ready(function(){
    $("form").submit(function(){
        var n = $("#i_uname").val();
        var p = $("#i_pwd").val();
        alert(n+":"+p);
    });
});

示例使用的是submit(function),在提交的时候输出要提交的数据。

窗口事件

窗口事件针对窗口或元素的尺寸改动、滚动条滑动等情况做出响应,resize事件是日常可能会应用到的事件,它是窗口尺寸变化事件。
当窗口的尺寸发生改变时,修改div元素的背景色为绿色:

$(document).ready(function(){
    $(window).resize(function(){
        $("div").css("background-color","green");
    })
});

其它事件

on/off:on用来向指定的元素添加事件,而off则用来移除on添加的事件。bind与on的作用是相同的,不过推荐使用on。

$(document).ready(function(){
    $("p").on("click",function(){
        alert('hello');
    });
    $("#hideshow").click(function(){
        $("p").off("click");
    });
});

hover:用来指定元素的两个事件,分别是鼠标滑入元素、鼠标滑出元素。需要注意的是,在jQuery 1.7版本前,该方法触发的是mouseenter和mouseleave事件;而在jQuery 1.8版本后,该方法触发的是mouseover和mouseout事件。

$(document).ready(function(){
    $("form").hover(function(){
        $("div").hide();
    },function(){
        $("div").show();
    });
});

event:event应该算是一个对象,它有许多的属性,可以使用它来获取当前的DOM元素、鼠标位置、事件的值等信息。

$(document).ready(function(){
    $("div").mousemove(function(event){
        $("span").html(event.pageX+","+event.pageY);
    });
});

change:当元素的值发生改变时触发的事件。

$(document).ready(function(){
    $("input").change(function(){
        $(this).css("background-color","blue");
    });
});
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值