Javascript:實操---矩形碰撞後顯示顏色

來源:互聯網
上載者:User

標籤:style   color   java   os   io   strong   ar   cti   

CSS部分

<style type="text/css">
div{
    font-size: 70px;
}
#div1{
    height: 100px;
    width: 100px;
    background-color: #ccc;
    position: absolute;
}    
#div2{
    height: 100px;
    width: 100px;
    background-color: yellow;
    position: absolute;
    left: 200px;
    top: 300px;
}
</style>

HTML部分

<div id="div1">A</div>
<div id="div2">B</div>

 

JS部分

<script type="text/javascript">

window.onload=function(){

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

  var oDiv2=document.getElementById("div2");

 

  oDiv1.onmousedown=function(ev){

    var oEvent=ev||window.event;

    var disX=oEvent.clientX-oDiv1.offsetLeft;

    var disY=oEvent.clientY-oDiv1.offsetTop;

 

    document.onmousemove=function(ev){

      var oEvent=ev||window.event;

      

      oDiv1.style.left=oEvent.clientX-disX+"px";

      oDiv1.style.top=oEvent.clientY-disY+"px";

 

      var l1=oDiv1.offsetLeft;

      var r1=l1+oDiv1.offsetWidht;

      var t1=oDiv1.offsetTop;

      var b1=t1+oDiv1.offsetHeight;

 

      var l2=oDiv2.offsetLeft;

      var r2=l2+oDiv2.offsetWidth;

      var t2=oDiv2.offsetTop;

      var b2=t2+oDiv2.offsetHeight;

 

      if(b1<t2||b2<t1||r2<l1||r1<l2){

        oDiv2.style.backgroundColor="yellow";

      }else{

        oDiv2.style.backgroundColor="blue";

      }

    document.onmouseup=function(){

        document.onmousemove=null;

      }

    }

  }

}

</script>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.