자바 스크립트를 사용하여 페이지의 영역을 선택하는 위젯을 만들려고 노력하고 있지만 X/Y
및 Width/Height
을 저장할 때 실제로는 해당 화면 크기에만 관련이 있으므로 문제가 발생하면 해당 선택 영역을 그려야합니다. 다른 사용자의 컴퓨터에서는 올바른 위치에서 벗어날 것입니다.화면 크기에 상관없이 위치를 추적하는 방법은 무엇입니까?
사용자의 화면 크기에 관계없이 x
및 y
위치를 추적하고 유지하는 방법은 무엇입니까?
자바 스크립트를 사용하여 페이지의 영역을 선택하는 위젯을 만들려고 노력하고 있지만 X/Y
및 Width/Height
을 저장할 때 실제로는 해당 화면 크기에만 관련이 있으므로 문제가 발생하면 해당 선택 영역을 그려야합니다. 다른 사용자의 컴퓨터에서는 올바른 위치에서 벗어날 것입니다.화면 크기에 상관없이 위치를 추적하는 방법은 무엇입니까?
사용자의 화면 크기에 관계없이 x
및 y
위치를 추적하고 유지하는 방법은 무엇입니까?
obj.offsetLeft
및 obj.offsetTop
은 항상 0,0 인 상단/왼쪽 구석에 상대적입니다.
window.innerWidth/2;
window.innerHeight/2;
elementNode.offsetWidth;
elementNode.offsetHeight;
위치가 화면의 중앙에 개체 :
el = document.getElementById('my_div');
el.style.position = 'absolute';
el.style.left = Math.floor((window.innerWidth/2) - (el.offsetWidth/2)) + 'px';
el.style.top = Math.floor((window.innerHeight/2) - (el.offsetHeight/2)) + 'px';
실무 데모 : http://jsfiddle.net/4aenr/
그래도 문제가 해결되지 않으면 제 의견을 읽어주십시오. – Ryan
"position : fixed;"? – wukong
질문에 의미가 없습니다. 화면 크기가 픽셀 기반 좌표계에 어떤 영향을 줍니까? –
웹 사이트는 대부분 중앙에 위치하며 픽셀 좌표는 왼쪽/위부터 계산되므로 큰 화면의 경우 왼쪽에 훨씬 넓은 흰색 공간이 표시되므로 생각하면됩니다. – Ryan