js学习第十一天

### insertBefore

   父节点.insertBefore(目标节点,参照节点);将目标节点添加至参照节点之前

         

### 滚动条及事件

   兼容写法:document.body.scrollTop = document.documentElement.scrollTop = 0


 

### 事件

     事件:对某个元素的某种操作

      事件元素    事件类型    [事件对象]

      button       单击       事件对象

         事件三要素

     1.事件元素:触发该事件的元素

     2.事件类型:什么动作 单击 双击 划入 划出

     3.事件对象:事件对象不是必须的,它携带者相关事件类型的所有属性和方法

           注意事项:有事件产生时,才会有事件对象

事件对象的兼容写法:

        document.onclick = function(evt){

              var e = evt || event;

              }


 

  ###   鼠标事件对象的属性

     1. page针对于页面的左顶点  常用

                 console.log("page:"+ e.pageX + "," + e.pageY);

     2.client针对于可视窗口的左顶点  不常用

                 console.log("client:" + e.clientX + "," + e.clientY);

     3.offset针对于父元素的左顶点 常用于拖拽

                 console.log("offset:" + e.offsetX + "," + e.offsetY);

### 事件流

    事件流:当子元素和父元素拥有相同事件时,子元素向父元素传递或父元素向子元素传递的过程,称为事件流

     1: 事件的冒泡:子->父   但并不是所有事件都会产生冒泡问题 onfocus onblur onload不会产生冒泡问题    

     2:事件的捕获

### 阻止事件冒泡

   时间兼容的同时  var e = evt || event;

   阻止冒泡将阻止冒泡的代码添加至传播源中:  e.stopPropagation?e.stopPropagation():e.cancelBubble = true;

 ### 阻止浏览器的默认行为

     事件兼容的同时  var e = evt || event;

      a标签的跳转

      阻止浏览器的默认行为

      e.preventDefault?e.preventDefault():e.returnValue = false;

<style>

        #tiger{

            width: 100px;

            height: 100px;

            background-image:url(../../html内容/34762cfad383d031.png.webp);

            background-size: 100px 100px;

            position: absolute;

            left:200px;

            top:500px;

        }

    </style>

<body>

    <div id="tiger"></div>

</body>

<script>

    var obtn = document.querySelector("#tiger")

    // 小老虎跳一跳用这个

    // document.onclick = function(){

    //     obtn.style.top = obtn.offsetTop - 100 +"px"

    // }


 

    document.onmousemove = function(evt){

        var e = evt || event;

        obtn.style.left = e.pageX - obtn.offsetWidth/2+"px";

        obtn.style.top = e.pageY - obtn.offsetHeight/2+"px"

    }

   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值