我为我的妻子制作简单的网页。
我将此脚本用作菜单:http://www.designchemical.com/lab/jquery-vertical-accordion-menu-plugin/examples/
因为我不想在点击菜单后重新加载整个页面,所以我使用pjax
方法(ajax
+ pushState
)
指向发生问题的网页的链接:http://sk-architekci.pl/sknowy2/ (请在IE中打开并单击左侧菜单中的“PROJEKTY”,然后在Firefox中执行相同操作)
我的问题:
在支持pushState
方法的浏览器中,一切都运行良好(是的IE不支持它)。在IE中,当我点击菜单中的某个链接时,除了IE之外的每个浏览器,菜单都会慢慢扩展,内容会加载到正确的div中。
在IE中,当我点击菜单中的某个链接时,由于整个页面重新加载,脚本无法完成其工作。菜单正在跳跃而不是慢慢重新加载。
我的问题:
有没有办法延迟页面重新加载,直到菜单脚本完成其工作?或许还有其他一些“肮脏”而且不优雅但有效的解决方案。
我的JS:
$(document).ready(function ($) {
$('#accordion-1').dcAccordion({
eventType: 'click',
autoClose: true,
saveState: true,
disableLink: false,
speed: 'fast',
showCount: false,
autoExpand: false,
cookie: 'dcjq-accordion-1'
});
});
我不是网络开发人员或程序员,我不太了解jquery,这就是为什么请尽可能给我简单的答案。
由于
答案 0 :(得分:0)
不确定这是否有效,但您可以尝试
在头标记的开头添加:
$(function(){
$('body').hide();
});
最后,添加:
$(document).ready(function(){
$('body').show();
});
这会隐藏所有内容,直到完成所有脚本编写。我使用它作为闪存无格式内容的解决方法。