目前我正在尝试创建一个设置,在主设备中加载页面内容,以避免为每个链接刷新页面。
我对点击的每个链接使用jQuery加载,以便链接加载到#main
。 (显然,完成后不会是所有链接。)
直接访问的页面工作正常,但如果您尝试使用此加载链接,那么它将正确加载内容,但仅显示在视图源中加载的HTML ,我在这里做错了吗?
$("body").on("click", "a", function(){
$("#footer, #main").fadeOut('fast');
$("#main").load($(this).attr("href"), function(){
$("#main, #footer").fadeIn('slow');
});
return false
});
答案 0 :(得分:2)
导致.load()
此问题的问题是,您所包含的文件包含<script></script>
个标记。
这些干扰了Javascript,它无法应对导致页面错误。
要停止此问题,您必须从已加载的文件中删除<script></script>
标记。
答案 1 :(得分:1)
你淡出了主人,并没有再次褪色...
使用此:
$("body").on("click", "a", function(){
$("#footer, #main").fadeOut('fast');
$("#main").load($(this).attr("href"), function(){
$("#main").fadeIn('slow'); // <======================
//$(this).fadeIn('slow'); this isn't the main object!
$("#footer").fadeIn('slow');
});
return false
});
回调中的 this
不是DOM元素!!!