我想要一个动画效果,当人们离开一个页面时开始。我可以在beforeUnload中放入什么?
我用这个目前:
window.onbeforeunload = function(){
alert("test");
console.log("test");
sliderIntervalId = setInterval('SlideDown()',1);
}
虽然“测试”确实记录到控制台,无论在功能了slideDown也没有测试警报产生...
这是正常的行为?我们可以使用beforeunload函数仅用于后端目的吗?
P.S.我正在使用chrome进行测试,这就是为什么我不得不在onLoad上使用onbeforeUnload i.s.o,这似乎不被Chrome支持?
我不认为你可以推迟新的页面加载onbeforeunload。提醒实际上会停止执行并冻结页面,直到您单击该提醒。 – ChrisR
P.S.在不相关的注释中,你不应该将字符串传递给'setTimeout',你应该传递函数。 'setInterval(SlideDown,1);' –
Chrome会阻止'onbeforeunload'中的'alert'。如果您在控制台中查看,您会在beforeunload期间看到'Blocked alert('test')'。 Chrome支持'onunload',但它的功能非常有限。检查这个小提琴:http://jsfiddle.net/EE4Md/3/ –