我有一个JQuery UI对话框,当用户访问我的网站时会自动打开,因此我们可以模态显示“正在构建”对话框。这是对话框的代码:
var $dialog = $('#dialog');
if ($.cookie("MySitePreviewCookie") != "firstView")
$(function () {
$.cookie("MySitePreviewCookie", "firstView", { expires: 180, path: '/' });
// Show Dialog Div
$dialog.dialog({
autoOpen: true,
resizable: false,
modal: true,
width: 600,
buttons: {
"Skip This": function () {
$(this).dialog("close");
}
}
});
});
else
$(function () {
// HIDE Dialog Div
$dialog.dialog({
autoOpen: false,
resizable: false,
modal: true,
width: 600,
buttons: {
"Skip This": function () {
$(this).dialog("close");
}
}
});
});
以下是对话框标记:
<div id="dialog" title="Welcome to MySite" class="dialogStyles">
<p>
Our site is still under construction but please look around and get a feel for what
we plan to offer. If you would like to sign-up for our newsletter, please enter
your email address below and click the <strong>Sign-up for Newsletter</strong> button.
</p>
<p class="validateTips"></p>
<br />
<input type="text" id="ccEmailAddress" name="ccEmailAddress" class="required email"
style="width: 250px" />
<input id="btnAddNewsletter" class="submit" type="submit" value="Sign- up for Newsletter" />
</div>
对话框效果很好。我有CSS来设计它并且它看起来很棒,除了当页面首次加载时,有一堆图像显示它正在它后面显示的页面(主页)正在加载。它显示(位于页面的最底部),然后对话框显示,一切都很好。如何让它停止在页面上显示DIV而不影响对话框?
答案 0 :(得分:1)
这个问题并没有真正直接的答案,所以为了让人们更容易,希望那些正在浏览类似答案的人,这将适合你的情况。 Zod是正确的...使用<style type="text/css"> .dialog {display:none}</style>
将阻止对话框中的任何输入或文本提前显示在页面上。此外,使用“文档就绪”应该有助于防止文档显示任何内容,直到所有需要加载的文件都准备就绪。