jQuery事件学习总结

1.mouseenter和mousemove 、mouseleave和mouseout 区别

上代码:

<div style="background-color:red; width: 300px; height: 300px; padding: 20px">
    <p style="width: 100px; height: 100px; background-color: green;">这是一个段落。</p>
    <button style="width: 100px; height: 50px; background-color: orange; margin-top: 20px">请点击这里</button>
</div>

js:

    $('div').mousemove(function(e){
        console.log('我是onmouseover');
    });

    $('div').mouseout(function(e){
        console.log('我是mouseout');
    });

    //这个可以反注释尝试一下,或者配合上面的代码任意反注释,打印对比一下看一下就明白了
//    $('div').mouseenter(function () {
//
//        console.log('我是mouseenter');
//    });
//
//    $('div').mouseleave(function () {
//
//        console.log('我是mouseleave');
//    });

总结:mouseenter 只有在鼠标指针穿过被选元素时会响应,通俗来件当鼠标刚好进入改标签的范围内时响应一次;mousemove鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件,通俗来件就是当鼠标在其标签或者子标签上移动时都是可以响应的,而且只要在该区域内就会连续不断响应;mouseleave和mouseout都是离开该区域是响应

2.trigger事件

<p>我是来测试的</p>

js:

$("p").click( function (event, a, b) {
    // 一个普通的点击事件时,a和b是undefined类型
    // 如果用下面的语句触发,那么a指向"foo",而b指向"bar"

    console.log(a);

    console.log('-------------');
    console.log(b);
} ).trigger("click", ["foo", "bar"]);

总结:Dom结构加载完成,第一次进来就会自动触发p的点击事件,并且把参数传过来传递过来, 再次点击时不会触发trigger, 个人认为跟one事件很类似,one是一次性的行为,也是只执行一次,你可以自己在试试看


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值