>웹 프론트엔드 >JS 튜토리얼 >충돌판정방법을 JS로 구현해보세요!

충돌판정방법을 JS로 구현해보세요!

jacklove
jacklove원래의
2018-06-15 15:52:591843검색

이번에는 JS를 사용하여 충돌을 판단하는 방법에 대한 예를 들어 보겠습니다. 불꽃놀이, 벽에서 튀는 작은 공, 픽셀 새 등과 같은 충돌에 대한 응용 시나리오는 다양하므로 향후 작업을 진행하기 전에 먼저 충돌을 결정하는 방법을 파악해야 합니다.

HTML 페이지 코드:

<p id="d1"></p>
<p id="d2"></p>

CSS 페이지 코드:

<style type="text/css">
		*{
			padding: 0px;
			margin: 0px;

		}
		#d1{
			width: 100px;
			height: 100px;
			background: red;
			position: absolute;
		}
		#d2{
			width: 200px;
			height: 200px;
			background: yellow;
			position: absolute;
			top: 200px;
			left: 400px;
			position: absolute;
		}
	</style>

JS 페이지 코드:

<script type="text/javascript">
	p=document.querySelectorAll("p"); 
function hit(obj){
	obj.onmousedown=function(e){
		var e=e||window.event;
		var dX=e.offsetX;
		var dY=e.offsetY;
		document.onmousemove=function(e){
			var x=e.clientX;
			var y=e.clientY;
			obj.style.left=x-dX+"px";
			obj.style.top=y-dY+"px";
			if(p[0].offsetTop+p[0].offsetHeight>=p[1].offsetTop && p[0].offsetTop<=p[1].offsetTop+p[1].offsetHeight && p[0].offsetLeft+p[0].offsetWidth>=p[1].offsetLeft && p[0].offsetLeft<=p[1].offsetLeft+p[1].offsetWidth){
				console.log("你撞我了!再撞一个试试!")
			};
	}
	document.onmouseup=function(){
		document.onmousemove=null;
	}
}	
}
hit(p[0]);
hit(p[1]);
</script>

이 글에서는 JS를 통해 충돌을 확인하는 방법을 설명합니다. 자세한 내용은 PHP 중국어 웹사이트를 참조하세요.

관련 권장 사항:

클래식 알고리즘을 위한 일부 JS 구현 솔루션 소개

javascript 홈페이지로 설정 즐겨찾기에 추가 JS 코드

JS 상속 이해



위 내용은 충돌판정방법을 JS로 구현해보세요!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.