键盘事件

键盘事件

键盘事件主要有三个:keydown、keypress、keyup。

触发顺序分别是keydown、keypress、keyup。

  document.onkeydown = function (e) {
      console.log(‘keydown’);
  }
  document.onkeypress = function (e) {
      console.log(‘keypress’);
  }
  document.onkeyup = function (e) {
      console.log(‘keyup’);
  }

输出的结果是keydown、keypress、keyup。

keydown和keypress可以响应连续操作,我们一直按着键盘就会一直触发事件。

keypress的范围和keydown有所区别:

keydown可以响应任意键盘按键,keypress只能响应字符类按键,也就是有ASCII码的字符的按键,像字母数字回车空格之类的。

事件对象的属性方面:

只有keypress有charCode属性,这个属性代表的我们输入的这个字符的ASCII码,配合SHIFT之类的按键可以直接获取大写字母等。

keyCode和which每个方法都有,表示的是这个键的唯一标示,可以告诉浏览器我们按下的是键盘上的哪一个键,比如空格是32,32就代表空格。不过我们一般都用which,keyCode用的较少。

• String上有一个方法叫做fromCharCode,可以接受一个Unicode值(包含ASCII值),然后返回对应的字符串,我们可以配合这个方法和charCode来直接获取输入的字符。

 document.onkeypress = function (e) {
     console.log(String.fromCharCode(e.charCode));
  }

窗体操作类(window上的事件)

load事件

这个事件window.onload和在body标签上写onload是一样的效果,作用是等页面中所有的东西都下载完成再执行里面的代码。

scroll事件

这个方法是监听滚轮滚动的事件,我们可以用这个事件来写一个兼容版的fix定位。

 function beFixed(ele){
      var initPosX = ele.getPosition().w,
          initPosY = ele.getPosition().h;
      addEvent(window, ‘scroll’, function(e){
          ele.style.top =  initPosY + getScrollOffset().h + ‘px’;
          ele.style.left =  initPosX + getScrollOffset().w + ‘px’;
      })
  }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值