jsAPI(续)

1. 事件

(1)鼠标事件

onclick:单击事件
ondblclick:双击事件
onmouseover:鼠标移入事件
onmouseout:鼠标移出事件
onmouseenter:鼠标进入事件
onmouseleave:鼠标离开事件
onmousedown:鼠标按下事件
onmouseup:鼠标抬起事件
onmousemove:鼠标移动事件
onfocus:获取焦点事件{input输入框}
onblur:失去焦点事件{input输入框}

(2)键盘事件

onkeydown 键盘按下事件 (按下时候,输入框是没有东西的){input输入框}
onkeyup 键盘抬起事件

(3)浏览器事件(方法:后面可以加函数)
onscroll 滚动条滚动事件
onload 浏览器加载完成后执行的事件

2.滚动条

overflow:scroll/auto  (一般写在父盒子里面)

3. 事件的进阶

【取消事件 事件源.事件类型 = null(事件类型保持一致)】
执行事件的步骤:获取元素 绑定事件 书写事件驱动程序
监听事件 addEventListener(‘事件类型’,回调函数) 解除 removeEventListener(调用才能解除)
事件类型不用加on ,回调函数不能加()
回调函数可以是一个函数,也可以是函数的调用

4.任何事件都有事件对象event

事件函数的第一个参数也是事件对象

5.事件的冒泡

【顺序:只操作内部的盒子】先执行内部盒子的函数,再执行外部盒子的函数
子元素延伸到父元素
mouseenter不支持冒泡,而mouseover支持冒泡
冒泡事件:先执行子元素,再执行父元素(对子元素加事件类型)
捕获事件:先执行父元素,再执行子元素(对子元素加事件类型)
阻止冒泡:event.stopPropagation

6.阻止事件默认行为(a标签 form表单的提交)

e.preventDefault  [e  函数中第一个参数]:只阻止跳转
default:默认的意思

7.阻止a标签跳转

(1)单return 点击事件中,后面加return:false(写在a标签的onclick中)
(2)双return return+函数(写在a标签的onclick中) 函数中加上return:false
(3)先获取再绑定 也是用的return
1.2的缺点:代码不分离,不符合低耦合,高内聚的规范
3的优点:实现了行为与结构的分离

8.元素的样式设置

1)对象.style    直接打点
(2)对象.className =class名    (添加class,提前设置好)
(3)对象.setAttribute(‘style’,‘css样式’)
(4)对象.setAttribute(‘class’,‘class的值’)
(5)对象.style.setProperty(‘css的属性名’,‘css的属性值’)
(6)对象.style.cssText = ‘直接写css样式’

9.元素的属性操作(元素-标签)

元素自身属性(打点就可以拿到) 自定义属性
getAttribute(‘属性名’):元素属性值的获取
getAttributeNode(‘属性名’);获取属性节点 获取属性名
setAttribute(‘属性名’,‘属性值’):设置元素属性【设置不用获取属性,获取到元素就行】
removeAttribute(‘属性名’){删除自身的属性值需要先获取}

10.浏览器的兼容

var event = event || window.event
  type : 事件类型
  target:事件源
  元素的id : target.id
  clientX clientY pageX pageY   距离浏览器顶部和左侧的距离  横纵坐标
  clientX clientY 不包括浏览器卷去的宽度和高度
  pageX pageY 包括浏览器卷去的宽度和高度
  key : 键名
  keyCode : 键码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值