目前我玩弄异步页面加载和我已经达到了当接收到响应以下实现:设置的持续时间将被延迟xhr.onload
xhr.onload = function(event) {
var res = event.target.responseXML;
// Update page content
setTimeout(function() {
content.innerHTML = res.querySelector('.content').innerHTML;
}, 250);
};
我给自己定的延迟250 ms以确保在更换和淡入新内容之前,先前的内容块有机会完成其淡出动画。这样做的问题是,除非我立即得到xhr响应(当然这不会在现实世界中发生),否则内容加载时总会有延迟。
什么是允许的页面来呈现新的内容之前等待至少250ms的最好的办法 - 那就是:
- 如果需要100毫秒获得一个XHR响应,还需要之前要等待150毫秒替换内容
- 如果需要1秒钟才能获得xhr响应,则旧内容块淡出已经很久,因此已经完成,因此立即加载新内容。