我正在尝试将不同的外部HTMl文件加载到父HTML中的DIV中。这是我正在使用的代码
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>BeautyDish Photography | Wedding and Beauty Photographer</title>
<meta name="">
<meta name="keywords" content="">
<meta name="viewport" content="width=device-width">
<!-- Place favicon.ico and apple-touch-icon.png in the root directory -->
</head>
<body>
<div id="wrapper" style=" max-width:1920px; min-width:1024px;">
<nav>
<div id='MainMenu'>
<a href="home">Home</a>
<a href="aboutus" id="aboutus">About Us</a>
<a href="portfolio" id="portfolio">Portfolio</a>
<a href="contactus" id="contactus">Contact Us</a>
</div>
</nav>
<div id="content" style="width:1200px; padding:0; margin:auto;">ff
</div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script src="js/main.js"></script>
<script>
$(function(){
$("#MainMenu a").click(function(e) {
//load home.html on click
e.preventDefault();
$("#content").load($(this).attr('href')+".html", null, function(){
alert('Load Done');
});
});
});
</script>
</body>
</html>
每当我第一次单击任何链接时,它都能正常工作,从第二次点击开始,加载时间会更长,警报会不止一次。 我还在http://www.jbasuphotography.com/index_new.html主持了一个工作版本 我是jQuery的新手,请让我知道如何解决这个问题。
答案 0 :(得分:3)
问题似乎是你将整个页面加载到div中。
它包含在脚本和事件绑定中,只会使情况变得更糟。
解决方案可能是减少真正感兴趣的部分(不同的页面)。但是这个解决方案必须根据您的实际需求进行设计,但目前尚不清楚。
答案 1 :(得分:0)
在加载之前,你可以先删除,因为它加载了多个文件。
$('#wrapper #content').remove();
$('#wrapper').append('<div id="#content"></div>')