标签:fse rop click out pagex rev over enter log
jQuery事件处理
1.事件绑定(2种)
* eventName(function(){})
绑定对应事件名的监听,例如:$(‘#div‘).click(function(){});
* on(eventName,function(){})
通用的绑定事件监听,例如:$(‘#div‘).on(‘click‘,function(){})
* 优缺点:
eventName:编码方便,但只能加一个监听,且有的事件监听不支持on:编码不方便,可以添加多个监听,且要通用
2.事件解绑:
* off(eventName)
3.事件坐标
* event.clientX,event.clientY 相对于视口的左上角
* event.pageX,event.pageY 相对于页面的左上角
* event.offsetX,event.offsetY 相对于事件元素左上角
4.事件相关处理:
* 停止事件冒泡:event.stopPropagation()
* 阻止事件默认行为:event.preventDefault()
/** * 1.给.out绑定点击监听(用两种方法绑定) * 2.给.inner绑定鼠标移入和移出的事件监听(用3种方法绑定) * 3.点击btn1解除.inner上的所有事件监听 * 4.点击btn2解除.inner上的mouserover事件 * 5.点击btn3得到事件坐标 * 6.点击.inner区域,外部点击监听不响应 * 7.点击链接,如果当前时间是偶数不跳转 */ // 1.给.out绑定点击监听(用两种方法绑定) $(‘.out‘).click(function () { console.log(‘click out‘) }) $(‘.out‘).on(‘click‘,function () { console.log(‘on click out‘) }) //2.给.inner绑定鼠标移入和移出的事件监听(用3种方法绑定) $(‘.inner‘) .onmouseenter(function () {//进入 console.log(‘进入‘) }) .onmouseleave(function () { console.log(‘离开‘) }) $(‘.inner‘) .on(‘onmouseenter‘,function () { console.log(‘进入‘) }) .on(‘onmouseleave‘,function () { console.log(‘离开‘) }) //3.点击btn1解除.inner上的所有事件监听 $(‘#btn1‘).click(function () { $(‘.inner‘).off() }) //4.点击btn2解除.inner上的mouserover事件 $(‘#btn2‘).click(function () { $(‘.inner‘).off(‘mouseover‘) }) //5.点击btn3得到事件坐标 $(‘#btn3‘).click(function (event) {//event事件对象 console.log(event.offsetX,event.offsetY)//原点为事件元素的左上角 console.log(event.clientX,event.clientY)//原点为窗口的左上角 console.log(event.pageX,event.pageY)//原点为页面的左上角 }) //6.点击.inner区域,外部点击监听不响应 $(‘.inner‘).click(function (event) { console.log(‘click inner‘) //停止事件冒泡 event.stopPropagation() }) //7.点击链接,如果当前时间是偶数不跳转 $(‘#test4‘).click(function (event) { if (Date.now()%2===0){ event.preventDefault() } }) })
标签:fse rop click out pagex rev over enter log
原文地址:https://www.cnblogs.com/yangHS/p/10889775.html