鼠标按下事件的疑问

<script type="text/javascript">


        window.onload=function(){

            /*

             onmousedown;

             onmousemove;

             onmouseup;

             */

            var oDiv=document.getElementById("div1");

            var i=0

            oDiv.onmousedown=function  (ev) {//**问题1**

                var ev=ev||event;

                var disX=ev.clientX-this.offsetLeft;

                var disy=ev.clientY-this.offsetTop;

                console.log(i++)

                oDiv.onmousemove=function(ev){

                    var ev=ev||event;

                    this.style.left= (ev.clientX-disX)+"px";

                    this.style.top= (ev.clientY-disy)+"px";

                }

                oDiv.onmouseup=function(){//**问题2**

                    oDiv.onmousemove=null

                }

            }

        }

    </script>

问题1:为什么在一次onmousedown之后,里面的oDiv.onmousemove可以持续运行呢?

问题2:此处的oDiv.onmouseup在每次oDiv.onmousedown是否在内存中新建的?每一次点击的时候函数是否会保存下来?


拉莫斯之舞
浏览 362回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript