jQuery中的事件

事件

添加事件和删除事件

$(“div”).on(“click”,clickHandler); //添加事件

function clickHandler(e){
console.log(“a”);
$(this).off(“click”,clickHandler);//删除事件
}

$(“div”).on(“click.a”,function(e){
console.log(“a”);
$(this).off(“click”); 将所有click事件的内容全部删除
$(this).off(“click.a”); 命名空间可以解决删除所有同类事件的问题
}).on(“click.b”,function(){
console.log(“b”);
})

带有参数的事件

var obj={
    a:1,
    b:function(){
        //这种添加事件的方式,参数放在事件类型和事件函数中间
        $("div").on("click",this,function(e){
            console.log(e);  //e.data就是传入的参数obj(this),也就是上面传入的参数this。
            })

        $("div").on("click",{a:this.a,b:10},function(e){
            console.log(e.data); //e.data是第二位的参数{a:this.a,b:10}-->{a:obj.a,b:10}-->{a:1,b:10}
        })
    }
}
obj.b();

抛发事件

$(“div”).trigger(“chilema”);//抛发事件

抛发事件参数位置:事件函数参数e后
一个参数:
$(“div”).on(“chilema”,function(e,o){
console.log(e,o); o:{a:1,b:10}
})

$(“div”).trigger(“chilema”,{a:1,b:10});

多个参数:
$(“div”).on(“chilema”,function(e,a,b,c){
console.log(e,a,b,c);
})
$(“div”).trigger(“chilema”,[10,100,1000])

$(“form”).trigger(“submit”);//会触发默认事件
$(“form”).triggerHandler(“submit”);//这个不会触发默认事件

triggerHandler() 方法抛发被选元素的指定事件类型。但不会执行浏览器默认动作,也不会产生事件冒泡。
triggerHandler() 方法与 trigger() 方法类似。不同的是它不会触发事件(比如表单提交)的默认行为,而且只影响第一个匹配元素。

添加事件的简易写法

$("div").click(function(){
    $(this).css("backgroundColor","green");
});
$("div").mousedown(function(){

})

拖拽元素

$("div").mousedown(function(e){
    var div=$(this);
    e.preventDefault();
    $(document).mousemove(function(e1){
        div.css({
            left:e1.clientX-e.offsetX,
            top:e1.clientY-e.offsetY,
        })
    }).mouseup(function(){
        $(this).off("mousemove mouseup");   //删除事件可以一起删除
    })
})

两种加载DOM的函数区别

  $(document).ready(function(){
    // 当DOM全部创建完成后,图片没有加载完成前
  })
  window.onload=function(){
      //全部的DOM包括图片全部加载完成
  }

hover

hover事件中,有两个事件函数,一个是滑入后的状态,另一个是离开后的状态
$("div").hover(function(){
      $(this).css("backgroundColor","green")
},function(){
    $(this).css("backgroundColor","red")
})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值