Google PageSpeed Insights说我的网站很重.外部模态是一种解决方案吗?
Google PageSpeed Insights says my website is heavy. Is external modals a solution?
我正在为我的办公室的作品集开发这个单页网站,为了保持干净,我正在使用引导模式来隐藏一些内容(几乎是图像和描述)。根据Google PageSpeed Insights,这使得整个页面变得沉重。为了寻找解决方案,我正在考虑使用以下方式将所有模态加载为外部 html 文件:
www.jsfiddle.net/qp7NP/
我不知道这是否是我的情况最明智的解决方案。我也担心SEO。我读到AJAX以某种方式用于动态加载内容,但我根本不熟悉AJAX。如果你们中的任何人知道我的情况的任何解决方案,或者可以就页面速度问题向我提供建议,我将不胜感激!
谢谢大家!
AJAX 真的并不像听起来那么可怕,对于这样的事情来说,这是一个很好的选择,因为它允许您使用几行 JavaScript 加载大量连续性,这意味着无论其他内容如何,初始加载时间都会更小。
下面的示例演示了如何将"首屏"(起始滚动位置下方)的内容加载为 HTML 并在必要时插入。
<!DOCTYPE html>
<html>
<head>
<title>example</title>
</head>
<body>
<h1>Page Title.</h1>
<p>This is the content which is on the screen at load</p>
<!-- this is the div which will hold all content outside of view when the page loads -->
<div id="below_fold"></div>
<script>
// get the content on once the page has loaded
window.onload = function() {
// set up http request object
var xhttp = new XMLHttpRequest();
// tell http object what to do when response is recieved
xhttp.onreadystatechange = function() {
// if its all good then go ahead
if (xhttp.readyState == 4 && xhttp.status == 200) {
// add content to div
document.getElementById("below_fold").innerHTML = xhttp.responseText;
}
// else we don't do anything, you could display an error or try again
};
// set file path for contents
xhttp.open("GET", "below_fold_content_html.txt", true);
// send request, xhttp.onreadystatechange will be called when completed
xhttp.send();
}
</script>
</body>
</html>
(上面的例子是 http://www.w3schools.com/ajax/的添加)
相关文章:
- 计时器在使用 jQuery 一分钟后没有触发,或者每 1 分钟后给出一些其他解决方案来触发功能
- 有没有一种方法可以在IE8中解决我的Rails javascript应用程序.js的问题
- 可以'我找不到关于koa.js研讨会解决方案的解释,练习一
- 为什么只打印一次?请给我解决方案
- Google PageSpeed Insights说我的网站很重.外部模态是一种解决方案吗?
- 使用 Rxjs,寻找一种更干净的解决方案来组合数组流
- Facebook找到了一种解决移动滚动的方法
- AngularJS - Grunt:是否存在一种解决方案来构建仅包含所需模块的正在运行的应用程序
- 节点和异步/等待,承诺...哪种解决方案最好
- DurandalJs:一种通用解决方案,用于将焦点放在组合视图上的第一个输入元素上
- jQuery:另一种解决方案可能吗
- 可以'在Lookup中找不到消除第二种记录类型的解决方案
- 有没有一种方法可以为querySelectors编写开关语句或其他解决方案
- 哪种解决方案更适合通过“;这个“;javascript事件处理程序的参数
- 寻找一种更优雅的方法来解决这个任务
- 如何修改给定的代码打开两个链接在一次点击(没有解决方案为我工作)
- 另存为PDF:推荐一种从客户端接收原始数据并将PDF发送回客户端的服务器解决方案
- 数组的数组或使用相同var返回不同值的另一种解决方案
- 在加载前提交,也许谁知道另一种方法的解决方案
- 在现场尝试了多种解决方案,但没有一种奏效:在Konami代码上播放<音频>