Merge pull request #334 from sinkuu/fix_188

Fix #188 (can't zoom in Firefox)
This commit is contained in:
ZeroNet 2016-03-07 10:01:09 +01:00
commit ea3257dc09
2 changed files with 30 additions and 5 deletions

View file

@ -241,7 +241,11 @@ DAT.Globe = function(container, opts) {
container.addEventListener('mousedown', onMouseDown, false); container.addEventListener('mousedown', onMouseDown, false);
if ('onwheel' in document) {
container.addEventListener('wheel', onMouseWheel, false);
} else {
container.addEventListener('mousewheel', onMouseWheel, false); container.addEventListener('mousewheel', onMouseWheel, false);
}
document.addEventListener('keydown', onDocumentKeyDown, false); document.addEventListener('keydown', onDocumentKeyDown, false);
@ -408,8 +412,12 @@ DAT.Globe = function(container, opts) {
function onMouseWheel(event) { function onMouseWheel(event) {
event.preventDefault(); event.preventDefault();
if (overRenderer) { if (overRenderer) {
if (event.deltaY) {
zoom(-event.deltaY * (event.deltaMode == 0 ? 1 : 50));
} else {
zoom(event.wheelDeltaY * 0.3); zoom(event.wheelDeltaY * 0.3);
} }
}
return false; return false;
} }
@ -464,6 +472,11 @@ DAT.Globe = function(container, opts) {
running = false running = false
container.removeEventListener('mousedown', onMouseDown, false); container.removeEventListener('mousedown', onMouseDown, false);
container.removeEventListener('mousewheel', onMouseWheel, false); container.removeEventListener('mousewheel', onMouseWheel, false);
if ('onwheel' in document) {
container.removeEventListener('wheel', onMouseWheel, false);
} else {
container.removeEventListener('mousewheel', onMouseWheel, false);
}
document.removeEventListener('keydown', onDocumentKeyDown, false); document.removeEventListener('keydown', onDocumentKeyDown, false);
window.removeEventListener('resize', onWindowResize, false); window.removeEventListener('resize', onWindowResize, false);

View file

@ -152,7 +152,11 @@ DAT.Globe = function(container, opts) {
container.addEventListener('mousedown', onMouseDown, false); container.addEventListener('mousedown', onMouseDown, false);
if ('onwheel' in document) {
container.addEventListener('wheel', onMouseWheel, false);
} else {
container.addEventListener('mousewheel', onMouseWheel, false); container.addEventListener('mousewheel', onMouseWheel, false);
}
document.addEventListener('keydown', onDocumentKeyDown, false); document.addEventListener('keydown', onDocumentKeyDown, false);
@ -319,8 +323,12 @@ DAT.Globe = function(container, opts) {
function onMouseWheel(event) { function onMouseWheel(event) {
event.preventDefault(); event.preventDefault();
if (overRenderer) { if (overRenderer) {
if (event.deltaY) {
zoom(-event.deltaY * (event.deltaMode == 0 ? 1 : 50));
} else {
zoom(event.wheelDeltaY * 0.3); zoom(event.wheelDeltaY * 0.3);
} }
}
return false; return false;
} }
@ -374,7 +382,11 @@ DAT.Globe = function(container, opts) {
function unload() { function unload() {
running = false running = false
container.removeEventListener('mousedown', onMouseDown, false); container.removeEventListener('mousedown', onMouseDown, false);
if ('onwheel' in document) {
container.removeEventListener('wheel', onMouseWheel, false);
} else {
container.removeEventListener('mousewheel', onMouseWheel, false); container.removeEventListener('mousewheel', onMouseWheel, false);
}
document.removeEventListener('keydown', onDocumentKeyDown, false); document.removeEventListener('keydown', onDocumentKeyDown, false);
window.removeEventListener('resize', onWindowResize, false); window.removeEventListener('resize', onWindowResize, false);