Share
Sign In
📄

mouse cursor position event

CRA로 생성된 기본 디렉토리 구조에서 App.js를 아래와 같이 수정한다.
//app.js import React, {useRef, useState} from 'react' import logo from './logo.svg'; import './App.css'; function App() { const [loc, setLoc] = useState([0,0]) const onMouseOver = (e) => { console.log(e.nativeEvent) setLoc([e.nativeEvent.offsetX, e.nativeEvent.offsetY]) } return ( <div className='wrapper'> <div className='wrap' onMouseMove={onMouseOver} > {loc[0]} {loc[1]} </div> </div> ); } export default App;
/*index.css*/ body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } code { font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace; } .wrapper { position: relative; left: 20px; top: 20px; } .wrap { position: relative; left:100px; top:100px; width: 1000px; height:500px; background-color:blue; }
nativeEvent 의 OffsetX
e.nativeEvent.offsetX는 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 x 위치를 잰다.
e.nativeEvent.offsetY 또한 마찬가지이다. 이 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 y위치를 잰다.
Example
React 홈으로 돌아가기
React.js
메인으로 돌아가기
CRA로 생성된 기본 디렉토리 구조에서 App.js를 아래와 같이 수정한다.
//app.js import React, {useRef, useState} from 'react' import logo from './logo.svg'; import './App.css'; function App() { const [loc, setLoc] = useState([0,0]) const onMouseOver = (e) => { console.log(e.nativeEvent) setLoc([e.nativeEvent.offsetX, e.nativeEvent.offsetY]) } return ( <div className='wrapper'> <div className='wrap' onMouseMove={onMouseOver} > {loc[0]} {loc[1]} </div> </div> ); } export default App;
/*index.css*/ body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } code { font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace; } .wrapper { position: relative; left: 20px; top: 20px; } .wrap { position: relative; left:100px; top:100px; width: 1000px; height:500px; background-color:blue; }
nativeEvent 의 OffsetX
e.nativeEvent.offsetX는 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 x 위치를 잰다.
e.nativeEvent.offsetY 또한 마찬가지이다. 이 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 y위치를 잰다.
Example
React 홈으로 돌아가기
React.js
메인으로 돌아가기
CRA로 생성된 기본 디렉토리 구조에서 App.js를 아래와 같이 수정한다.
//app.js import React, {useRef, useState} from 'react' import logo from './logo.svg'; import './App.css'; function App() { const [loc, setLoc] = useState([0,0]) const onMouseOver = (e) => { console.log(e.nativeEvent) setLoc([e.nativeEvent.offsetX, e.nativeEvent.offsetY]) } return ( <div className='wrapper'> <div className='wrap' onMouseMove={onMouseOver} > {loc[0]} {loc[1]} </div> </div> ); } export default App;
/*index.css*/ body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } code { font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace; } .wrapper { position: relative; left: 20px; top: 20px; } .wrap { position: relative; left:100px; top:100px; width: 1000px; height:500px; background-color:blue; }
nativeEvent 의 OffsetX
e.nativeEvent.offsetX는 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 x 위치를 잰다.
e.nativeEvent.offsetY 또한 마찬가지이다. 이 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 y위치를 잰다.
Example
React 홈으로 돌아가기
React.js
메인으로 돌아가기
CRA로 생성된 기본 디렉토리 구조에서 App.js를 아래와 같이 수정한다.
//app.js import React, {useRef, useState} from 'react' import logo from './logo.svg'; import './App.css'; function App() { const [loc, setLoc] = useState([0,0]) const onMouseOver = (e) => { console.log(e.nativeEvent) setLoc([e.nativeEvent.offsetX, e.nativeEvent.offsetY]) } return ( <div className='wrapper'> <div className='wrap' onMouseMove={onMouseOver} > {loc[0]} {loc[1]} </div> </div> ); } export default App;
/*index.css*/ body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } code { font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace; } .wrapper { position: relative; left: 20px; top: 20px; } .wrap { position: relative; left:100px; top:100px; width: 1000px; height:500px; background-color:blue; }
nativeEvent 의 OffsetX
e.nativeEvent.offsetX는 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 x 위치를 잰다.
e.nativeEvent.offsetY 또한 마찬가지이다. 이 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 y위치를 잰다.
Example
React 홈으로 돌아가기
React.js
메인으로 돌아가기
CRA로 생성된 기본 디렉토리 구조에서 App.js를 아래와 같이 수정한다.
//app.js import React, {useRef, useState} from 'react' import logo from './logo.svg'; import './App.css'; function App() { const [loc, setLoc] = useState([0,0]) const onMouseOver = (e) => { console.log(e.nativeEvent) setLoc([e.nativeEvent.offsetX, e.nativeEvent.offsetY]) } return ( <div className='wrapper'> <div className='wrap' onMouseMove={onMouseOver} > {loc[0]} {loc[1]} </div> </div> ); } export default App;
/*index.css*/ body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } code { font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace; } .wrapper { position: relative; left: 20px; top: 20px; } .wrap { position: relative; left:100px; top:100px; width: 1000px; height:500px; background-color:blue; }
nativeEvent 의 OffsetX
e.nativeEvent.offsetX는 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 x 위치를 잰다.
e.nativeEvent.offsetY 또한 마찬가지이다. 이 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 y위치를 잰다.
Example
React 홈으로 돌아가기
React.js
메인으로 돌아가기
CRA로 생성된 기본 디렉토리 구조에서 App.js를 아래와 같이 수정한다.
//app.js import React, {useRef, useState} from 'react' import logo from './logo.svg'; import './App.css'; function App() { const [loc, setLoc] = useState([0,0]) const onMouseOver = (e) => { console.log(e.nativeEvent) setLoc([e.nativeEvent.offsetX, e.nativeEvent.offsetY]) } return ( <div className='wrapper'> <div className='wrap' onMouseMove={onMouseOver} > {loc[0]} {loc[1]} </div> </div> ); } export default App;
/*index.css*/ body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } code { font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace; } .wrapper { position: relative; left: 20px; top: 20px; } .wrap { position: relative; left:100px; top:100px; width: 1000px; height:500px; background-color:blue; }
nativeEvent 의 OffsetX
e.nativeEvent.offsetX는 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 x 위치를 잰다.
e.nativeEvent.offsetY 또한 마찬가지이다. 이 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 y위치를 잰다.
Example
React 홈으로 돌아가기
React.js
메인으로 돌아가기
CRA로 생성된 기본 디렉토리 구조에서 App.js를 아래와 같이 수정한다.
//app.js import React, {useRef, useState} from 'react' import logo from './logo.svg'; import './App.css'; function App() { const [loc, setLoc] = useState([0,0]) const onMouseOver = (e) => { console.log(e.nativeEvent) setLoc([e.nativeEvent.offsetX, e.nativeEvent.offsetY]) } return ( <div className='wrapper'> <div className='wrap' onMouseMove={onMouseOver} > {loc[0]} {loc[1]} </div> </div> ); } export default App;
/*index.css*/ body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } code { font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace; } .wrapper { position: relative; left: 20px; top: 20px; } .wrap { position: relative; left:100px; top:100px; width: 1000px; height:500px; background-color:blue; }
nativeEvent 의 OffsetX
e.nativeEvent.offsetX는 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 x 위치를 잰다.
e.nativeEvent.offsetY 또한 마찬가지이다. 이 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 y위치를 잰다.
Example
React 홈으로 돌아가기
React.js
메인으로 돌아가기
CRA로 생성된 기본 디렉토리 구조에서 App.js를 아래와 같이 수정한다.
//app.js import React, {useRef, useState} from 'react' import logo from './logo.svg'; import './App.css'; function App() { const [loc, setLoc] = useState([0,0]) const onMouseOver = (e) => { console.log(e.nativeEvent) setLoc([e.nativeEvent.offsetX, e.nativeEvent.offsetY]) } return ( <div className='wrapper'> <div className='wrap' onMouseMove={onMouseOver} > {loc[0]} {loc[1]} </div> </div> ); } export default App;
/*index.css*/ body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } code { font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace; } .wrapper { position: relative; left: 20px; top: 20px; } .wrap { position: relative; left:100px; top:100px; width: 1000px; height:500px; background-color:blue; }
nativeEvent 의 OffsetX
e.nativeEvent.offsetX는 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 x 위치를 잰다.
e.nativeEvent.offsetY 또한 마찬가지이다. 이 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 y위치를 잰다.
Example
React 홈으로 돌아가기
React.js
메인으로 돌아가기
CRA로 생성된 기본 디렉토리 구조에서 App.js를 아래와 같이 수정한다.
//app.js import React, {useRef, useState} from 'react' import logo from './logo.svg'; import './App.css'; function App() { const [loc, setLoc] = useState([0,0]) const onMouseOver = (e) => { console.log(e.nativeEvent) setLoc([e.nativeEvent.offsetX, e.nativeEvent.offsetY]) } return ( <div className='wrapper'> <div className='wrap' onMouseMove={onMouseOver} > {loc[0]} {loc[1]} </div> </div> ); } export default App;
/*index.css*/ body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } code { font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace; } .wrapper { position: relative; left: 20px; top: 20px; } .wrap { position: relative; left:100px; top:100px; width: 1000px; height:500px; background-color:blue; }
nativeEvent 의 OffsetX
e.nativeEvent.offsetX는 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 x 위치를 잰다.
e.nativeEvent.offsetY 또한 마찬가지이다. 이 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 y위치를 잰다.
Example
React 홈으로 돌아가기
React.js
메인으로 돌아가기
CRA로 생성된 기본 디렉토리 구조에서 App.js를 아래와 같이 수정한다.
//app.js import React, {useRef, useState} from 'react' import logo from './logo.svg'; import './App.css'; function App() { const [loc, setLoc] = useState([0,0]) const onMouseOver = (e) => { console.log(e.nativeEvent) setLoc([e.nativeEvent.offsetX, e.nativeEvent.offsetY]) } return ( <div className='wrapper'> <div className='wrap' onMouseMove={onMouseOver} > {loc[0]} {loc[1]} </div> </div> ); } export default App;
/*index.css*/ body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } code { font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace; } .wrapper { position: relative; left: 20px; top: 20px; } .wrap { position: relative; left:100px; top:100px; width: 1000px; height:500px; background-color:blue; }
nativeEvent 의 OffsetX
e.nativeEvent.offsetX는 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 x 위치를 잰다.
e.nativeEvent.offsetY 또한 마찬가지이다. 이 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 y위치를 잰다.
Example
React 홈으로 돌아가기
React.js
메인으로 돌아가기
CRA로 생성된 기본 디렉토리 구조에서 App.js를 아래와 같이 수정한다.
//app.js import React, {useRef, useState} from 'react' import logo from './logo.svg'; import './App.css'; function App() { const [loc, setLoc] = useState([0,0]) const onMouseOver = (e) => { console.log(e.nativeEvent) setLoc([e.nativeEvent.offsetX, e.nativeEvent.offsetY]) } return ( <div className='wrapper'> <div className='wrap' onMouseMove={onMouseOver} > {loc[0]} {loc[1]} </div> </div> ); } export default App;
/*index.css*/ body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } code { font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace; } .wrapper { position: relative; left: 20px; top: 20px; } .wrap { position: relative; left:100px; top:100px; width: 1000px; height:500px; background-color:blue; }
nativeEvent 의 OffsetX
e.nativeEvent.offsetX는 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 x 위치를 잰다.
e.nativeEvent.offsetY 또한 마찬가지이다. 이 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 y위치를 잰다.
Example
React 홈으로 돌아가기
React.js
메인으로 돌아가기
CRA로 생성된 기본 디렉토리 구조에서 App.js를 아래와 같이 수정한다.
//app.js import React, {useRef, useState} from 'react' import logo from './logo.svg'; import './App.css'; function App() { const [loc, setLoc] = useState([0,0]) const onMouseOver = (e) => { console.log(e.nativeEvent) setLoc([e.nativeEvent.offsetX, e.nativeEvent.offsetY]) } return ( <div className='wrapper'> <div className='wrap' onMouseMove={onMouseOver} > {loc[0]} {loc[1]} </div> </div> ); } export default App;
/*index.css*/ body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } code { font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New', monospace; } .wrapper { position: relative; left: 20px; top: 20px; } .wrap { position: relative; left:100px; top:100px; width: 1000px; height:500px; background-color:blue; }
nativeEvent 의 OffsetX
e.nativeEvent.offsetX는 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 x 위치를 잰다.
e.nativeEvent.offsetY 또한 마찬가지이다. 이 이벤트 핸들러는 선택한 태그의 왼쪽을 축으로 마우스 커서의 y위치를 잰다.
Example
React 홈으로 돌아가기
React.js
메인으로 돌아가기