Web applications 未引发applicationCache事件
在Chrome中,捕捉applicationCache事件是有效的(见下文),但在FireFox 17中不起作用(尽管我从信息中看到,在允许appCache填充后,其中有1.7MB)。因此,它是工作,但我没有得到的事件。为什么?(此代码位于加载的第一个.JS文件中)Web applications 未引发applicationCache事件,web-applications,application-cache,Web Applications,Application Cache,在Chrome中,捕捉applicationCache事件是有效的(见下文),但在FireFox 17中不起作用(尽管我从信息中看到,在允许appCache填充后,其中有1.7MB)。因此,它是工作,但我没有得到的事件。为什么?(此代码位于加载的第一个.JS文件中) 顺便说一句,我希望FireBug在appCache上有那个些整洁的资源标签信息,就像我用Chrome工具做的索引一样 据我所知,事件确实会被触发,但在调用swapCache时会出现错误,这会阻止完成代码块。 您可以使用try-cat
顺便说一句,我希望FireBug在appCache上有那个些整洁的资源标签信息,就像我用Chrome工具做的索引一样 据我所知,事件确实会被触发,但在调用swapCache时会出现错误,这会阻止完成代码块。 您可以使用try-catch绕过此错误
window.applicationCache.addEventListener('updateready', function() {
try {window.applicationCache.swapCache();}
catch(error) {
console.log(error.code);
}
if (confirm('A new version of this site is available. Load it?')) {
window.location.reload();
}
}, false);
然后一切都会按预期进行。您需要这个版本的Firefox吗?如果不是,那么在后续版本的Firefox中是否也存在同样的问题?请注意,在Firefox24
swapCache
中,我似乎已不再使用FF,因为我需要IndexedDB中良好的二进制blob支持,而FF使用webSQL进行IDB的破解工作。
window.applicationCache.addEventListener('updateready', function() {
try {window.applicationCache.swapCache();}
catch(error) {
console.log(error.code);
}
if (confirm('A new version of this site is available. Load it?')) {
window.location.reload();
}
}, false);