Zoom on scroll wheel.
This commit is contained in:
parent
7cc1866863
commit
d688c1b9c4
17
src/App.js
17
src/App.js
@ -56,6 +56,16 @@ class App extends React.Component {
|
|||||||
}
|
}
|
||||||
this.setState({isZoomed: true});
|
this.setState({isZoomed: true});
|
||||||
};
|
};
|
||||||
|
const mouseScroll = (e) => {
|
||||||
|
let delta = parseFloat(-e.deltaY/100.0);
|
||||||
|
let zoomFactor = delta + this.state.zoomFactor;
|
||||||
|
if (zoomFactor < 1) { zoomFactor = 1; }
|
||||||
|
if (zoomFactor > 24) { zoomFactor = 24; }
|
||||||
|
this.setState({
|
||||||
|
zoomFactor: zoomFactor,
|
||||||
|
isZoomed: true
|
||||||
|
});
|
||||||
|
};
|
||||||
const mouseLeave = (e) => {
|
const mouseLeave = (e) => {
|
||||||
if (isFrozen) {
|
if (isFrozen) {
|
||||||
return;
|
return;
|
||||||
@ -86,6 +96,7 @@ class App extends React.Component {
|
|||||||
onMouseMove={mouseMove}
|
onMouseMove={mouseMove}
|
||||||
onMouseEnter={mouseEnter}
|
onMouseEnter={mouseEnter}
|
||||||
onMouseLeave={mouseLeave}
|
onMouseLeave={mouseLeave}
|
||||||
|
onWheel={mouseScroll}
|
||||||
className="frame"
|
className="frame"
|
||||||
style={{backgroundImage: 'url("' + url + '")', ...style}}>
|
style={{backgroundImage: 'url("' + url + '")', ...style}}>
|
||||||
<p>{name}</p>
|
<p>{name}</p>
|
||||||
@ -101,12 +112,12 @@ class App extends React.Component {
|
|||||||
<input
|
<input
|
||||||
id="zoom"
|
id="zoom"
|
||||||
type="range"
|
type="range"
|
||||||
min="1" max="64"
|
min="1" max="24"
|
||||||
value={zoomFactor}
|
value={zoomFactor}
|
||||||
onChange={(e) => this.setState({
|
onChange={(e) => this.setState({
|
||||||
zoomFactor: e.target.value
|
zoomFactor: Number(e.target.value)
|
||||||
})}
|
})}
|
||||||
step="1"/>
|
step="0.1"/>
|
||||||
</label>
|
</label>
|
||||||
{zoomFactor}
|
{zoomFactor}
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user