国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

基于javascript實(shí)現(xiàn)碰撞檢測

瀏覽:2日期:2023-06-24 16:03:44

本文實(shí)例為大家分享了javascript實(shí)現(xiàn)碰撞檢測的具體代碼,供大家參考,具體內(nèi)容如下

<html><head><style>#div1 {width:100px; height:100px; background:red; position:absolute; z-index:2;}#div2 {width:100px; height:100px; background:yellow; position:absolute; left:230px; top:220px; z-index:1;}</style><meta http-equiv='Content-Type' content='text/html; charset=utf-8' /><title>無標(biāo)題文檔</title><script>window.οnlοad=function (){ var oDiv=document.getElementById(’div1’); var oDiv2=document.getElementById(’div2’); oDiv.οnmοusedοwn=function (ev) { var oEvent=ev||event; var disX=oEvent.clientX-oDiv.offsetLeft; var disY=oEvent.clientY-oDiv.offsetTop; document.οnmοusemοve=function (ev) { var oEvent=ev||event; oDiv.style.left=oEvent.clientX-disX+’px’; oDiv.style.top=oEvent.clientY-disY+’px’; var l1=oDiv.offsetLeft;//紅塊左邊線 var r1=oDiv.offsetLeft+oDiv.offsetWidth;//紅塊右邊線 var t1=oDiv.offsetTop;//紅塊上邊線 var b1=oDiv.offsetTop+oDiv.offsetHeight;//紅塊下邊線 var l2=oDiv2.offsetLeft;//黃塊左邊線 var r2=oDiv2.offsetLeft+oDiv2.offsetWidth;//黃塊右邊線 var t2=oDiv2.offsetTop;//黃塊上邊線 var b2=oDiv2.offsetTop+oDiv2.offsetHeight;//黃塊下邊線 if(r1<l2 || l1>r2 || b1<t2 || t1>b2) { oDiv2.style.background=’yellow’; } else { oDiv2.style.background=’green’; } }; document.οnmοuseup=function () { document.οnmοusemοve=null; document.οnmοuseup=null; }; };};</script></head> <body><div id='div1'></div><div id='div2'></div></body></html>

基于javascript實(shí)現(xiàn)碰撞檢測

碰撞檢測原理圖如上:

我們檢測碰撞時(shí),發(fā)現(xiàn)兩個(gè)div碰上檢測比沒碰上的檢測要難,所以以沒碰上作為檢測條件。畫上九宮格,當(dāng)紅色div在黃色div左邊線或是右邊線或是上邊線或是下邊線外時(shí)是永遠(yuǎn)不可能碰上的,只要這四個(gè)條件都不滿足,意味著兩個(gè)div相撞了,將黃塊變綠。

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 海安县| 郑州市| 遵义市| 玉树县| 湟源县| 舞钢市| 石屏县| 平阴县| 南部县| 稷山县| 大洼县| 萝北县| 通化县| 措勤县| 华蓥市| 光泽县| 五峰| 武鸣县| 齐河县| 渭南市| 山东省| 乐都县| 贵德县| 靖江市| 彝良县| 密山市| 大同市| 淅川县| 炎陵县| 晋城| 高尔夫| 南投市| 三门县| 莱西市| 依安县| 临西县| 新邵县| 金塔县| 龙井市| 伊春市| 永福县|