fusionapp预加载网页的代码
时间: 2024-02-06 08:12:29 浏览: 190
以下是一个完整的使用自定义预加载器进行资源预加载的HTML页面示例代码:
```html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>预加载示例</title>
<script>
var preloader = function (resources, callback) {
var loaded = 0;
var total = resources.length;
var onload = function () {
loaded++;
if (loaded === total) {
callback();
}
};
for (var i = 0; i < total; i++) {
var resource = resources[i];
var type = resource.split('.').pop();
var element;
if (type === 'js') {
element = document.createElement('script');
element.src = resource;
} else if (type === 'css') {
element = document.createElement('link');
element.rel = 'stylesheet';
element.href = resource;
} else if (type === 'jpg' || type === 'png' || type === 'gif') {
element = new Image();
element.src = resource;
}
element.onload = onload;
document.head.appendChild(element);
}
};
preloader([
// 需要预加载的资源
'/images/image1.jpg',
'/css/style.css',
'/js/script.js'
], function () {
// 所有资源加载完成后执行的回调函数
console.log('所有资源加载完成!');
// 模拟页面内容加载完成后显示
document.getElementById('loading').style.display = 'none';
document.getElementById('content').style.display = 'block';
});
</script>
<style>
#loading {
display: block;
text-align: center;
font-size: 24px;
margin-top: 50px;
}
#content {
display: none;
}
</style>
</head>
<body>
<div id="loading">正在加载,请稍候...</div>
<div id="content">
页面内容
</div>
</body>
</html>
```
在这个示例中,我们定义了一个名为`preloader`的预加载器函数,它接受两个参数:需要预加载的资源数组和所有资源加载完成后执行的回调函数。在预加载器函数中,我们使用了`document.createElement`方法动态创建了需要预加载的资源元素,并将它们添加到页面中。当所有资源加载完成后,将执行回调函数。同时,我们在页面中添加了一个loading提示,在所有资源加载完成后,将隐藏loading提示并显示页面内容。
阅读全文