Javascript 使jquery.load发生在HTML加载之前
我在文件navbar.html中有一个引导navbar,我用Jquery.load将它加载到我的html页面中 我的HTML页面底部有以下内容:Javascript 使jquery.load发生在HTML加载之前,javascript,jquery,html,css,twitter-bootstrap,Javascript,Jquery,Html,Css,Twitter Bootstrap,我在文件navbar.html中有一个引导navbar,我用Jquery.load将它加载到我的html页面中 我的HTML页面底部有以下内容: <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <script> $(function(){ $("#navbar-partial
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
$(function(){
$("#navbar-partial").load("navbar.html");
});
</script>
$function{延迟加载,直到DOM就绪
只要您的代码位于它引用的div之后,这将使速度稍微加快:
<div id="navbar-partial></div>
<script>
$("#navbar-partial").load("navbar.html");
</script>
您仍然依赖于加载延迟,因此不要期待奇迹:
这个问题的正确解决方案通常是服务器端的,但由于您使用的是纯HTML文件,所以现在必须这样做。我不确定这是使用部分菜单的最佳方式 但要使其更早加载,只需删除“dom就绪”部分
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>$("#navbar-partial").load("navbar.html");</script>
把它放在HTML中的navbar部分元素中,它就可以工作了
不过,我建议您考虑使用服务器端包含,这是大多数web服务器都支持的
<!--#include virtual="navbar.html" -->
您可以在这里了解更多信息:您使用的是什么服务器技术?PHP?ASP/MVC?因为AJAX不是解决此问题的最佳解决方案。我只有带有JS文件的HTML页面。