How to Bubble onMouseMove event
I have image, where I want to show div when I starting to hover on it, but when that div is being hovered React going crazy, because after second div appear image stop his onMouseMove event,
State holds variable which will deciade if div appear or not. Variable name "zoom"
I want to keep firing onMouseMove event even when second div appear, any ideas how I could get something like this?
<img
onMouseMove={e => {
this.setState({ zoom: 'block' });
}}
onMouseLeave={() => {
this.setState({ zoom: 'none' });
}}
id="productImg"
src={images[this.state.imgActive]}
/>
)}
<div
style={{
display: this.state.zoom,
float: 'right',
overflow: 'hidden',
zIndex: 100,
transform: 'translateZ(0px)',
opacity: '0.4',
zoom: 1,
width: 285,
height: 285,
backgroundColor: 'white',
border: '1px solrgb(0, 0, 0)',
backgroundRepeat: 'no-repeat',
position: 'absolute',
left: 0,
top: 0
}}
>
javascript reactjs javascript-events event-handling mouseevent
add a comment |
I have image, where I want to show div when I starting to hover on it, but when that div is being hovered React going crazy, because after second div appear image stop his onMouseMove event,
State holds variable which will deciade if div appear or not. Variable name "zoom"
I want to keep firing onMouseMove event even when second div appear, any ideas how I could get something like this?
<img
onMouseMove={e => {
this.setState({ zoom: 'block' });
}}
onMouseLeave={() => {
this.setState({ zoom: 'none' });
}}
id="productImg"
src={images[this.state.imgActive]}
/>
)}
<div
style={{
display: this.state.zoom,
float: 'right',
overflow: 'hidden',
zIndex: 100,
transform: 'translateZ(0px)',
opacity: '0.4',
zoom: 1,
width: 285,
height: 285,
backgroundColor: 'white',
border: '1px solrgb(0, 0, 0)',
backgroundRepeat: 'no-repeat',
position: 'absolute',
left: 0,
top: 0
}}
>
javascript reactjs javascript-events event-handling mouseevent
add a comment |
I have image, where I want to show div when I starting to hover on it, but when that div is being hovered React going crazy, because after second div appear image stop his onMouseMove event,
State holds variable which will deciade if div appear or not. Variable name "zoom"
I want to keep firing onMouseMove event even when second div appear, any ideas how I could get something like this?
<img
onMouseMove={e => {
this.setState({ zoom: 'block' });
}}
onMouseLeave={() => {
this.setState({ zoom: 'none' });
}}
id="productImg"
src={images[this.state.imgActive]}
/>
)}
<div
style={{
display: this.state.zoom,
float: 'right',
overflow: 'hidden',
zIndex: 100,
transform: 'translateZ(0px)',
opacity: '0.4',
zoom: 1,
width: 285,
height: 285,
backgroundColor: 'white',
border: '1px solrgb(0, 0, 0)',
backgroundRepeat: 'no-repeat',
position: 'absolute',
left: 0,
top: 0
}}
>
javascript reactjs javascript-events event-handling mouseevent
I have image, where I want to show div when I starting to hover on it, but when that div is being hovered React going crazy, because after second div appear image stop his onMouseMove event,
State holds variable which will deciade if div appear or not. Variable name "zoom"
I want to keep firing onMouseMove event even when second div appear, any ideas how I could get something like this?
<img
onMouseMove={e => {
this.setState({ zoom: 'block' });
}}
onMouseLeave={() => {
this.setState({ zoom: 'none' });
}}
id="productImg"
src={images[this.state.imgActive]}
/>
)}
<div
style={{
display: this.state.zoom,
float: 'right',
overflow: 'hidden',
zIndex: 100,
transform: 'translateZ(0px)',
opacity: '0.4',
zoom: 1,
width: 285,
height: 285,
backgroundColor: 'white',
border: '1px solrgb(0, 0, 0)',
backgroundRepeat: 'no-repeat',
position: 'absolute',
left: 0,
top: 0
}}
>
<img
onMouseMove={e => {
this.setState({ zoom: 'block' });
}}
onMouseLeave={() => {
this.setState({ zoom: 'none' });
}}
id="productImg"
src={images[this.state.imgActive]}
/>
)}
<div
style={{
display: this.state.zoom,
float: 'right',
overflow: 'hidden',
zIndex: 100,
transform: 'translateZ(0px)',
opacity: '0.4',
zoom: 1,
width: 285,
height: 285,
backgroundColor: 'white',
border: '1px solrgb(0, 0, 0)',
backgroundRepeat: 'no-repeat',
position: 'absolute',
left: 0,
top: 0
}}
>
<img
onMouseMove={e => {
this.setState({ zoom: 'block' });
}}
onMouseLeave={() => {
this.setState({ zoom: 'none' });
}}
id="productImg"
src={images[this.state.imgActive]}
/>
)}
<div
style={{
display: this.state.zoom,
float: 'right',
overflow: 'hidden',
zIndex: 100,
transform: 'translateZ(0px)',
opacity: '0.4',
zoom: 1,
width: 285,
height: 285,
backgroundColor: 'white',
border: '1px solrgb(0, 0, 0)',
backgroundRepeat: 'no-repeat',
position: 'absolute',
left: 0,
top: 0
}}
>
javascript reactjs javascript-events event-handling mouseevent
javascript reactjs javascript-events event-handling mouseevent
edited Nov 20 '18 at 23:00
Tiny Giant
13.4k64156
13.4k64156
asked Nov 20 '18 at 22:57
PaulPaul
296
296
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
It seem like you have a div
on top of the img
.
When it appears your mouse is on top of the div
and no more on top of the img
consequently canceling the event.
I would suggest to add the CSS attribute pointerEvents: 'none'
to the div
in order to ignore the mouse events and let them be handled by the element below.
Hope it helps.
nope, div and img are on same level, they are siblings but ur idea works! thanks!
– Paul
Nov 20 '18 at 23:26
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53402860%2fhow-to-bubble-onmousemove-event%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
It seem like you have a div
on top of the img
.
When it appears your mouse is on top of the div
and no more on top of the img
consequently canceling the event.
I would suggest to add the CSS attribute pointerEvents: 'none'
to the div
in order to ignore the mouse events and let them be handled by the element below.
Hope it helps.
nope, div and img are on same level, they are siblings but ur idea works! thanks!
– Paul
Nov 20 '18 at 23:26
add a comment |
It seem like you have a div
on top of the img
.
When it appears your mouse is on top of the div
and no more on top of the img
consequently canceling the event.
I would suggest to add the CSS attribute pointerEvents: 'none'
to the div
in order to ignore the mouse events and let them be handled by the element below.
Hope it helps.
nope, div and img are on same level, they are siblings but ur idea works! thanks!
– Paul
Nov 20 '18 at 23:26
add a comment |
It seem like you have a div
on top of the img
.
When it appears your mouse is on top of the div
and no more on top of the img
consequently canceling the event.
I would suggest to add the CSS attribute pointerEvents: 'none'
to the div
in order to ignore the mouse events and let them be handled by the element below.
Hope it helps.
It seem like you have a div
on top of the img
.
When it appears your mouse is on top of the div
and no more on top of the img
consequently canceling the event.
I would suggest to add the CSS attribute pointerEvents: 'none'
to the div
in order to ignore the mouse events and let them be handled by the element below.
Hope it helps.
answered Nov 20 '18 at 23:14
danizepdanizep
1166
1166
nope, div and img are on same level, they are siblings but ur idea works! thanks!
– Paul
Nov 20 '18 at 23:26
add a comment |
nope, div and img are on same level, they are siblings but ur idea works! thanks!
– Paul
Nov 20 '18 at 23:26
nope, div and img are on same level, they are siblings but ur idea works! thanks!
– Paul
Nov 20 '18 at 23:26
nope, div and img are on same level, they are siblings but ur idea works! thanks!
– Paul
Nov 20 '18 at 23:26
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53402860%2fhow-to-bubble-onmousemove-event%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown