Jquery 如何强制剑道UI模式窗口在页面中居中?以及如何禁用所有操作?
我试图在浏览器的中心显示一个剑道UI模式窗口,但它一直显示在页面的底部,我的意思是窗口唯一可见的部分是顶部的栏,窗口的其余部分是看不见的,只有当你拖动它时,你才能正确地查看它。我没有应用于窗口所用的div的样式,所以我不明白为什么会这样显示 另外,我想禁用窗口顶部栏上的所有操作按钮,尝试设置一个空操作数组,但默认显示关闭按钮,是否有方法仅在顶部栏上显示窗口的标题?我希望窗口中的按钮被单击时消失 这就是我创建窗口的方式:Jquery 如何强制剑道UI模式窗口在页面中居中?以及如何禁用所有操作?,jquery,kendo-ui,modal-dialog,Jquery,Kendo Ui,Modal Dialog,我试图在浏览器的中心显示一个剑道UI模式窗口,但它一直显示在页面的底部,我的意思是窗口唯一可见的部分是顶部的栏,窗口的其余部分是看不见的,只有当你拖动它时,你才能正确地查看它。我没有应用于窗口所用的div的样式,所以我不明白为什么会这样显示 另外,我想禁用窗口顶部栏上的所有操作按钮,尝试设置一个空操作数组,但默认显示关闭按钮,是否有方法仅在顶部栏上显示窗口的标题?我希望窗口中的按钮被单击时消失 这就是我创建窗口的方式: var accessWindow = $("#accessDiv").ken
var accessWindow = $("#accessDiv").kendoWindow({
actions: [],
draggable: true,
height: "300px",
modal: true,
resizable: false,
title: "Access",
width: "500px"
});
accessWindow.center();
accessWindow.open();
这是我的div,只有一个标签、一个输入和一个按钮,目前没有应用CSS:
<div id="accessDiv" style=" width: 100%; height: 100%; background-color: #fff;">
<label>Enter access key</label>
<input type="text" />
<input type="button" title="Enter" value="Enter" />
</div>
输入访问密钥
1.您需要交换最后两行代码。首先你们需要打开窗户,然后你们可以把它居中
2.要在不执行任何操作的情况下显示窗口,您需要传递空对象:
actions: {}
你有没有试过把它藏起来,然后居中打开
var accessWindow = $("#accessDiv").kendoWindow({
actions: {}, /*from Vlad's answer*/
draggable: true,
height: "300px",
modal: true,
resizable: false,
title: "Access",
width: "500px",
visible: false /*don't show it yet*/
}).data("kendoWindow").center().open();
发件人:最后两行应为:
accessWindow.data("kendoWindow").center();
accessWindow.data("kendoWindow").open();
下面这个对我有用。如果您不喜欢将其作为模态,请将其设置为false或将其删除
var window = $("#addBlacklistWind");
$("#btnAddBlacklist").bind("click", function () {
window.data("kendoWindow").center().open();
});
window.kendoWindow({
width: "800px",
title: "Add New Blacklist",
modal: true,
visible: false,
actions: [
"Maximize",
"Close"
]
});
空对象不显示任何动作,但窗口一直显示在底部,我想我需要在这方面做更多的说明,当我说“底部”时,我的意思是你只能看到顶部栏,窗口不会显示在浏览器上,直到你拖动它才能查看它。打开窗口,然后执行
.center()
为我工作。非常感谢这条信息+1@VladOmelyanchuuk,当我打开().center()时,我可以看到对话框在屏幕上滑动到中间。我怎样才能防止这种情况发生?你是说.data('kendoWindow').center().open()?但是是的,这解决了问题,如果我想稍微改变它的位置,我应该怎么做?如果你知道XY位置,你可以使用accessWindow.wrapper.css({top:“100px”,left:“50px”})
。请记住,您可以通过执行accessWindow.wrapper.position()
来获取位置。如果我关闭并再次打开它,或者甚至访问window.data(“kendoWindow”).center().open(),示例仍然会发现它有时很奇怪;没有按这种顺序为我工作。Vlad在上面的回答是,他说打开窗口,然后居中,使我的窗口居中。@vapcguy,当它先打开,然后居中时,你是如何让它防止滑过窗口的?事实上,对不起,我又看了一遍,看到了accessWindow.data(“kendoWindow”).center().open()代码>毕竟。不确定顺序是否真正重要,但高度是重要的,因此在从Ajax加载内容的场景中,需要将其强制到某个高度,否则它会尝试将没有高度的内容居中。