我有一个网站有一些强烈的图形,连接速度慢的人可能需要下载时间。在他们的浏览器下载时,他们有表单选项。很多时候他们会填写表格并点击提交。
这会导致事件验证问题,因为页面未完全加载。我可以想出很多方法来解决这个问题。我可以返回并禁用每个控件,然后在页面加载时编写javascript以启用这些控件clientide。
我也查看了blockui,但它会阻止整个页面或只是一个div。我正在寻找一些我可以在我的主页上留下来并忘掉它的东西。
有什么想法吗?
答案 0 :(得分:2)
似乎正确的方法是在事后加载强大的图形,这样用户仍然可以在呈现关键DOM元素时立即提交表单。 (我假设在提交表单之前加载所有图片并不是非常重要的?)
您可以相当轻松地执行此操作,方法是将您的图片作为基于CSS的背景加载到基于特定类的div
和body
元素上,如下所示:
body.loaded {background: black url("http://us.battle.net/sc2/static/images/layout/body-bg-baked.jpg") center top no-repeat;}
然后在页面加载后添加以下代码:
$(window).load(function() {$('body').addClass('loaded');});
它不应该在加载图像时产生任何明显的减速,但它将允许所有页面的DOM元素和javascript在必要时下载这些图像时运行。
答案 1 :(得分:0)
我自己无法解释答案。但我认为这有你需要做的事情的要点。 http://www.telerik.com/community/forums/aspnet/ajax/disable-or-gray-out-page-when-displaying-loading-panel.aspx