jQuery Div 요소 간 충돌 감지
요소 간 충돌 감지는 많은 웹 애플리케이션에서 기본적인 작업입니다. 이 경우 목표는 두 개의 특정
이 문제를 해결하는 효과적인 접근 방식 중 하나는 아래 제공된 겹침 기능을 활용하는 것입니다.
var overlaps = (function () { function getPositions( elem ) { var pos, width, height; pos = $( elem ).position(); width = $( elem ).width(); height = $( elem ).height(); return [ [ pos.left, pos.left + width ], [ pos.top, pos.top + height ] ]; } function comparePositions( p1, p2 ) { var r1, r2; r1 = p1[0] < p2[0] ? p1 : p2; r2 = p1[0] < p2[0] ? p2 : p1; return r1[1] > r2[0] || r1[0] === r2[0]; } return function ( a, b ) { var pos1 = getPositions( a ), pos2 = getPositions( b ); return comparePositions( pos1[0], pos2[0] ) && comparePositions( pos1[1], pos2[1] ); }; })();
이 기능은 두 개의
이 기능의 사용법을 보여주기 위해
$(function () { var area = $( '#area' )[0], box = $( '#box0' )[0], html; html = $( area ).children().not( box ).map( function ( i ) { return '<p>Red box + Box ' + ( i + 1 ) + ' = ' + overlaps( box, this ) + '</p>'; }).get().join( '' ); $( 'body' ).append( html ); });
이 예에서는 "Red box"라는 이름의 빨간색 상자가 생성되고 마우스를 사용하여 이동됩니다. "Box 1"부터 "Box 4"까지 레이블이 지정된 여러 다른 상자는 "area" div의 다른 위치에 배치됩니다. jQuery 스크립트는 "빨간색 상자"와 다른 각 상자 사이의 충돌을 확인하고 결과를 일련의
overlaps 기능을 활용하면 jQuery
위 내용은 jQuery`` 요소 간의 충돌을 어떻게 감지합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!