JavaScript-事件监听及对象

添加事件监听 

语法:对象名.addEventListener('事件类型',要执行的函数)

  •    作用:当事件触发时,就调用这个函数
  •    事件类型:比如用鼠标点击,或用滚轮滑动,鼠标经过这些
  •     要执行的函数:要做的事 
<body>
  <button>点击按钮</button>
  <script>
    document.querySelector('button').addEventListener('click',function(){
      alert('what can i say')
    })
  </script>
</body>

事件类型 

  •  鼠标事件:由鼠标去触发这个事件
  • 焦点事件 :由光标去触发这个事件
  • 键盘事件 : 由键盘触发这个事件
  • 文本事件  :表单输入触发这个事件

焦点事件 
<body>
    <div class="mi">
        <input type="search" placeholder="笔记本">
        <ul class="result-list">
            <li><a href="#">惠普</a></li>
            <li><a href="#">红米</a></li>
            <li><a href="#">联想</a></li>
            <li><a href="#">华为</a></li>
            <li><a href="#">外星人</a></li>
        </ul>
    </div>
    <script>
   const input=document.querySelector('.mi input')
   const ul=document.querySelector('ul');
   input.addEventListener('focus',function(){
     ul.style.display='block';
   })
   input.addEventListener('blur',function(){
     ul.style.display='none';
   })


    </script>
</body>

 当这个input标签获取到焦点时,出现了笔记本的种类

 键盘事件 

用对象名.value可以获取到键盘输入的值 

<body>
        <input type="text" placeholder="笔记本">
    <script>
        const box=document.querySelector('input');
        box.addEventListener('input',function(){
            console.log(box.value);
        })
    </script>
</body>

事件对象

事件对象也是一个对象 

事件对象存放了多个属性,像鼠标位置这些

在事件监听里面回调函数第一个参数就是事件对象

一般命名为event、ev、e

  元素.addEventListener('事件',function(event){})

事件对象常用的属性 

  •  type:获取当前事件的类型
  • clientX/clientY:  获取光标相对于浏览器可见窗口左上角的位置
  • offsetX/offsetY:  获取光标相对于当前DOM元素左上角的位置
  • key: 用户按下键盘输入的值 
<body>
  <div></div>
  <script>
  const box=document.querySelector('div');
  box.addEventListener('click',function(e){
    console.log(e.offsetX,e.offsetY);
  })
  </script>
</body>

当我们点击这个标签元素时,控制台会输出当前光标(坐标的位置相对于浏览器窗口的左上角)的坐标 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值