JavaScript学习笔记(三)

目录

1. 事件对象

1.1 事件对象的常见属性和方法

2.常用的鼠标事件

2.1 常用鼠标事件-----禁止复制功能的实现

2.2 鼠标事件对象MouseEvent

3. 键盘事件

3.1 常用的键盘事件

3.2 键盘事件对象KeyboardEvent

三、BOM

1. window对象的常见事件

1.1 页面加载事件

1.2 窗口加载事件

1.3 调整窗口大小事件

1.4 定时器

1.5 location对象

1.6 navigation对象

1.7 history对象


1. 事件对象

1.1 事件对象的常见属性和方法

e.target                        返回触发事件的对象(标准),this返回的是绑定事件的对象
e.srcElement               返回触发事件的对象(非标准IE6-8使用)
e.type                           返回事件的类型,比如click mouseover 不带on
e.returnValue               该属性阻止默认事件(默认行为)(非标准ie6-8使用),比如不让链接跳转
e.preventDefault()        该方法阻止默认事件(默认行为)(标准),比如不让链接跳转

我们可以利用return false 也能阻止默认行为没有兼容性问题特点: return 后面的代码不执行了,
而且只限于传统的注册方式
e.stopPropagation()     阻止冒泡(标准)

e.cancelBubble 该属性阻止冒泡(非标准ie6-8使用)

2.常用的鼠标事件

2.1 常用鼠标事件-----禁止复制功能的实现

1.禁止鼠标右键菜单

contextmenu主要控制应该何时显示上下文菜单,主要用于程序员取消默认的上下文菜单
document. addEventListener ('contextmenu', function(e) {
e. preventDefault() ;
})

2.禁止鼠标选中( selectstart开始选中)

document. addEventListener ('selectstart', function(e) {
e. preventDefault () ;
})

2.2 鼠标事件对象MouseEvent

e.clientX       返回鼠标相对于浏览器窗口可视区的X坐标
e.clientY       返回鼠标相对于浏览器窗口可视区的Y坐标
e.pageX        返回鼠标相对于文档页面的X坐标1E9+ 支持
e.pageY         返回鼠标相对于文档页面的Y坐标1E9+ 支持
e.screenX      返回鼠标相对于电脑屏幕的X坐标
e.screenY      返回鼠标相对于电脑屏幕的Y坐标

3. 键盘事件

3.1 常用的键盘事件

onkeyup           某个键盘按键被松开时触发
onkeydown      某个键盘按键被按下时触发
onkeypress      某个键盘按键被按下时触发,但是它不识别功能键,比如ctrl shift箭头等
执行顺序:keydown -> keypress -> keyup

3.2 键盘事件对象KeyboardEvent

e.keyCode       案件的ASCⅡ码值,keyup和keydown不区分字母大小写

三、BOM

1. window对象的常见事件

1.1 页面加载事件

window.οnlοad=function(){ }         页面内容全部加载完毕后执行,只执行最后一个

window.addEventListener('load',function(){      })  可以执行多个

1.2 窗口加载事件

document.addEventListener('DOMContentLoaded',function(){   })   仅当DOM加载完成,不包含样式表、图片、flash等,IE9以上支持

1.3 调整窗口大小事件

window.οnresize=function(){  }        窗口大小发生变化时触发事件

window.addEventListener('resize',function(){ })

1.4 定时器

1.这个时间后调用:window.setTimeout(调用函数,[延迟的毫秒数]);

停止定时器:window.clearTimeout(timeoutID);

2.每隔这个时间调用:window.setInterval(回调函数,[间隔的毫秒数]);

停止定时器:window.clearInterval(timeoutID);

1.5 location对象

1.location对象的属性:

location.href              获取或者设置整个URL
location. host            返回主机(域名)
location.port              返回端口号如果未写返回空字符串
location.pathname    返回路径
location. search        返回参数
location. hash           返回片段#后面内容 常见于链接锚点

2.location对象的方法:

location.assign)         跟href-样,可以跳转页面(也称为重定向页面)
location.replace()      替换当前页面,因为不记录历史,所以不能后退页面
location.reload()        重新加载页面,相当于刷新按钮或者f5,如果参数为true强制刷新ctrl+f5

1.6 navigation对象

不同终端打开不同的页面:

if ( (navigator.userAgent.match (/ (phone | pad | pod | iPhone |iPod| ios | iPad |Android | Mobile |BlackBerry | IEMobile |MQQBrowser | JUC | Fennec |wOSBrowser | BrowserNG I Webos | Symbian | Windows Phone)/i))) {
        window. location.href ="";    //手机
} else {
        window. location.href = "";     //电脑
}

1.7 history对象

back()            后退功能
forward()        前进功能
go(参数)        前进后退功能参数如果是1前进1个页面如果是-1后退1个页面

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值