Prevent scroll on redraw inside onunload if previous onunload calls preventDefault

https://github.com/lhorie/mithril.js/issues/560#issuecomment-93876904
This commit is contained in:
Toby Zerner 2015-04-22 07:48:43 +09:30
parent 3fd7013d90
commit 23766a5cbe

View file

@ -570,7 +570,10 @@ var m = (function app(window, undefined) {
if (index < 0) index = roots.length; if (index < 0) index = roots.length;
var isPrevented = false; var isPrevented = false;
var event = {preventDefault: function() {isPrevented = true}}; var event = {preventDefault: function() {
isPrevented = true;
computePreRedrawHook = computePostRedrawHook = null;
}};
for (var i = 0, unloader; unloader = unloaders[i]; i++) { for (var i = 0, unloader; unloader = unloaders[i]; i++) {
unloader.handler.call(unloader.controller, event) unloader.handler.call(unloader.controller, event)
unloader.controller.onunload = null unloader.controller.onunload = null
@ -601,7 +604,6 @@ var m = (function app(window, undefined) {
endFirstComputation(); endFirstComputation();
return controllers[index] return controllers[index]
} }
else computePreRedrawHook = computePostRedrawHook = null
}; };
var redrawing = false var redrawing = false
m.redraw = function(force) { m.redraw = function(force) {