Skip to content

Commit 47e0176

Browse files
author
Minh Tran
committed
Use mouseenter when fixed, fix IE 10
1 parent a654d67 commit 47e0176

6 files changed

Lines changed: 20 additions & 20 deletions

File tree

bower.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "react-tooltip-component",
3-
"version": "0.2.0",
3+
"version": "0.2.1",
44
"description": "React component.",
55
"main": ["dist/react-tooltip-component.js", "dist/tooltip"],
66
"keywords": [

dist/react-tooltip-component.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

example/webpack.dev.server.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ app.get('*', function (req, res) {
6767

6868
var server = http.createServer(app);
6969

70-
server.listen(port, host, function () {
70+
server.listen(port, function () {
7171
console.log('Listening at ' + serverUrl);
7272
opn(serverUrl);
7373
});

lib/Tooltip.js

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,8 @@ var Tooltip = (function (_React$Component) {
5050
_this.container.appendChild(_this.tooltipEl);
5151
_this.resetTooltip();
5252

53-
_this.componentEl.addEventListener('mousemove', _this.handleMouseMove);
54-
_this.componentEl.addEventListener('mouseout', _this.handleMouseOut);
53+
_this.componentEl.addEventListener(_this.props.fixed ? 'mouseenter' : 'mousemove', _this.handleMouseMove);
54+
_this.componentEl.addEventListener('mouseleave', _this.handleMouseOut);
5555
};
5656

5757
this.componentDidUpdate = function () {
@@ -60,8 +60,8 @@ var Tooltip = (function (_React$Component) {
6060
};
6161

6262
this.componentWillUnmount = function () {
63-
_this.componentEl.removeEventListener('mousemove', _this.handleMouseMove);
64-
_this.componentEl.removeEventListener('mouseout', _this.handleMouseOut);
63+
_this.componentEl.removeEventListener(_this.props.fixed ? 'mouseenter' : 'mousemove', _this.handleMouseMove);
64+
_this.componentEl.removeEventListener('mouseleave', _this.handleMouseOut);
6565
_this.container.removeChild(_this.tooltipEl);
6666
};
6767

@@ -122,13 +122,13 @@ var Tooltip = (function (_React$Component) {
122122
cOffsetY = componentHeight / 2;
123123
break;
124124
}
125-
pointX = componentOffsetX + cOffsetX + window.scrollX;
126-
pointY = componentOffsetY + cOffsetY + window.scrollY;
125+
pointX = componentOffsetX + cOffsetX + (window.scrollX || window.pageXOffset);
126+
pointY = componentOffsetY + cOffsetY + (window.scrollY || window.pageYOffset);
127127
} else {
128128
var clientX = e.clientX;
129129
var clientY = e.clientY;
130-
pointX = clientX - containerOffsetX + window.scrollX;
131-
pointY = clientY - containerOffsetY + window.scrollY;
130+
pointX = clientX - containerOffsetX + (window.scrollX || window.pageXOffset);
131+
pointY = clientY - containerOffsetY + (window.scrollY || window.pageYOffset);
132132
}
133133
return {
134134
x: pointX,

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "react-tooltip-component",
3-
"version": "0.2.0",
3+
"version": "0.2.1",
44
"description": "React tooltip component.",
55
"main": "lib/index.js",
66
"scripts": {

src/Tooltip.js

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@ class Tooltip extends React.Component {
3636
this.container.appendChild(this.tooltipEl);
3737
this.resetTooltip();
3838

39-
this.componentEl.addEventListener('mousemove', this.handleMouseMove);
40-
this.componentEl.addEventListener('mouseout', this.handleMouseOut);
39+
this.componentEl.addEventListener(this.props.fixed ? 'mouseenter' : 'mousemove', this.handleMouseMove);
40+
this.componentEl.addEventListener('mouseleave', this.handleMouseOut);
4141
};
4242

4343
componentDidUpdate = () => {
@@ -47,8 +47,8 @@ class Tooltip extends React.Component {
4747

4848

4949
componentWillUnmount = () => {
50-
this.componentEl.removeEventListener('mousemove', this.handleMouseMove);
51-
this.componentEl.removeEventListener('mouseout', this.handleMouseOut);
50+
this.componentEl.removeEventListener(this.props.fixed ? 'mouseenter' : 'mousemove', this.handleMouseMove);
51+
this.componentEl.removeEventListener('mouseleave', this.handleMouseOut);
5252
this.container.removeChild(this.tooltipEl);
5353
};
5454

@@ -109,13 +109,13 @@ class Tooltip extends React.Component {
109109
cOffsetY = componentHeight / 2;
110110
break;
111111
}
112-
pointX = componentOffsetX + cOffsetX + window.scrollX;
113-
pointY = componentOffsetY + cOffsetY + window.scrollY;
112+
pointX = componentOffsetX + cOffsetX + (window.scrollX || window.pageXOffset);
113+
pointY = componentOffsetY + cOffsetY + (window.scrollY || window.pageYOffset);
114114
} else {
115115
let clientX = e.clientX;
116116
let clientY = e.clientY;
117-
pointX = clientX - containerOffsetX + window.scrollX;
118-
pointY = clientY - containerOffsetY + window.scrollY;
117+
pointX = clientX - containerOffsetX + (window.scrollX || window.pageXOffset);
118+
pointY = clientY - containerOffsetY + (window.scrollY || window.pageYOffset);
119119
}
120120
return {
121121
x: pointX,

0 commit comments

Comments
 (0)