나는이 프로젝트에서 작업하고 있습니다 ... 브라우저에서 작업한다고 가정하면 그리고 아이폰에서도 마찬가지입니다 ... 그래서 지금 이벤트 문제를 다루고 있습니다. .. 자바 스크립트 이벤트를 아이폰에 사용할 수 있습니까 ??? ???아이폰 - 자바 스크립트 이벤트 ... three.js에 대한
1
A
답변
4
필요한 기능에 따라 다르지만 휴대 전화에서는 this을 사용해보세요. 다음과 비슷한 큐브 구조를 렌더링해야합니다. three.js cubes http://lifesine.eu/labs/media/images/vector.gif
터치하고 드래그 할 수 있어야합니다. 이것은 three.js를 함께 제공 이전 큐브 드래그 샘플을 기반으로하고 여기에 이벤트가 사용된다
document.addEventListener('mousedown', onDocumentMouseDown, false);
document.addEventListener('touchstart', onDocumentTouchStart, false);
document.addEventListener('touchmove', onDocumentTouchMove, false);
을 그리고 여기에 청취자입니다 : 사용되는 몇 가지 변수가 있다는 것을
가function onDocumentMouseDown(event) {
event.preventDefault();
document.addEventListener('mousemove', onDocumentMouseMove, false);
document.addEventListener('mouseup', onDocumentMouseUp, false);
document.addEventListener('mouseout', onDocumentMouseOut, false);
mouseXOnMouseDown = event.clientX - windowHalfX;
targetRotationOnMouseDown = targetRotation;
}
function onDocumentMouseMove(event) {
mouseX = event.clientX - windowHalfX;
mouseY = event.clientY - windowHalfY;
targetRotation = targetRotationOnMouseDown + (mouseX - mouseXOnMouseDown) * 0.02;
}
function onDocumentMouseUp(event) {
document.removeEventListener('mousemove', onDocumentMouseMove, false);
document.removeEventListener('mouseup', onDocumentMouseUp, false);
document.removeEventListener('mouseout', onDocumentMouseOut, false);
}
function onDocumentMouseOut(event) {
document.removeEventListener('mousemove', onDocumentMouseMove, false);
document.removeEventListener('mouseup', onDocumentMouseUp, false);
document.removeEventListener('mouseout', onDocumentMouseOut, false);
}
function onDocumentTouchStart(event) {
if (event.touches.length == 1) {
event.preventDefault();
mouseXOnMouseDown = event.touches[ 0 ].pageX - windowHalfX;
targetRotationOnMouseDown = targetRotation;
}
}
function onDocumentTouchMove(event) {
if (event.touches.length == 1) {
event.preventDefault();
mouseX = event.touches[ 0 ].pageX - windowHalfX;
targetRotation = targetRotationOnMouseDown + (mouseX - mouseXOnMouseDown) * 0.05;
}
}
주 targetRotation, targetRotationOnMouseDown 등과 같이 명확하지 않을 수도 있습니다. 해당 링크의 소스 코드를 자유롭게 사용할 수는 있지만 작년에 코딩 했으므로 three.js 코드 중 일부는 약간 다를 수 있습니다 (어쩌면 재료 등), 이벤트 부분은 코드에 붙여 넣기 만하면 작동합니다. 덕분에 다시 친구를 위해
HTH는
관련 문제
- 1. three.js에 대한 출처가 필요합니다
- 2. three.js에 대한 뒷면 가시성이 있습니까?
- 3. Three.js에 대한 GoogleEarth와 같은 컨트롤
- 4. 자바 스크립트/아이폰 OS -
- 5. 아이폰 자바 스크립트 기본값?
- 6. Google지도 아이콘에 대한 자바 스크립트 클릭 이벤트?
- 7. 자바 스크립트 이벤트 리스너?
- 8. 자바 스크립트 이벤트 제거
- 9. 자바 스크립트 원격 이벤트?
- 10. 자바 스크립트 이벤트 리스너
- 11. 아이폰 자바 스크립트 실행 시간
- 12. 요격 자바 스크립트 이벤트
- 13. 자바 스크립트 이벤트 동기화
- 14. 자바 스크립트 onSubmit 이벤트
- 15. 자바 스크립트 이벤트 트리거
- 16. 자바 스크립트 ManualReset 이벤트
- 17. 티타늄 자바 스크립트 이벤트
- 18. 자바 스크립트 클릭 이벤트
- 19. 주문 자바 스크립트 이벤트
- 20. 자바 스크립트 이벤트 처리
- 21. 자바 스크립트 이벤트 처리
- 22. 자바 스크립트 : iFrame의 이벤트
- 23. 자바 스크립트 이벤트?
- 24. 자바 스크립트 타이밍 이벤트
- 25. 자바 스크립트 - 이벤트 만들기
- 26. 자바 스크립트 터치 이벤트
- 27. 자바 스크립트 : mousestop 이벤트
- 28. 자바 스크립트 onload 이벤트
- 29. 자바 스크립트 이벤트 keypress
- 30. 자바 스크립트 이벤트 문제
덕분에! ... 나는 내가 (Y)입니다에서만 작동하는 회전을 의미 ... 아이폰에서 작동하지 않습니다, 슬프지만 진실하고, 데모를 시도했다. 두 번째 문제는 ... 내 문제가 더 커 ... "카메라"를 회전해야 할뿐만 아니라 캔버스에 드래그 가능한 객체를 만들었습니다. – BorisD
이 질문보기 : http://stackoverflow.com/questions/8307535/three-js-project-on-iphone-events-issue-selectdrag-object – BorisD
기술적으로, Y에서 회전 할 수 있다면 터치 이벤트가 작동합니다. ** ** 귀하의 질문에 대한 답변입니다 (" 아이폰에 사용 ");). 그것은 내가 코딩 한 방식이기 때문에 Y에서만 작동합니다. 그렇지 않으면 (끌기와 같이) 다르게 처리 할 수있는 것이 없습니다. 현재 다른 질문을 할 수 없습니다. 귀하의 [다른 질문] (http://stackoverflow.com/questions/8292486/three-js-how-to-detect-what-shape-was-selected-after-drag)을보고 몇 가지 문제점을 발견했습니다. 그러나 내가 말했던 것처럼, 지금은 시간이 없다. 나중에 주일에 시도 할 것입니다 –