我是Kendo Window的新手,我计划将window.resize()
函数声明为页面中所有Kendo Windows的全局jquery函数。我怎么声明呢?
我已将此代码添加到.js文件中,并在_Layout.cshtml
中引用它,但它不起作用:
$(window).resize(function() {
$(".k-window").kendoWindow().center();
});
单独使用时,我正在使用这组代码:
var modal = $("#mdlWindow").kendoWindow({
visible: false,
resizable: true,
modal: true,
content: "../Position/Info,
width: "50%",
height: "50%",
maxWidth: 500,
maxHeight: 600,
minWidth: 300,
minHeight: 400,
top: 0,
bottom: 0,
left: 0,
right: 0,
iframe: true
}).data("kendoWindow");
modal.center().open();
$(window).resize(function() {
modal.center();
});
接受任何建议。如果有一种方法可以在css中进行,我会尝试。
答案 0 :(得分:1)
首先,Kendo Window是一个特定的Kendo UI小部件,其中widget元素没有k-window
类但k-window-content
。类k-window
正在添加到元素容器中。
其次要获得Kendo Window实例,你应该使用.data('kendoWindow')
方法而不是.kendoWindow()
。
最后,如果您打开多个窗口,则必须迭代所有窗口以单独执行操作。
因此,以window.resize()
事件为中心的所有Kendo窗口的代码应如下所示:
$(window).resize(function() {
var windows = $(".k-window-content");
windows.each(function(i,v){
$(v).data("kendoWindow").center();
});
});
这是Kendo UI Dojo示例:http://dojo.telerik.com/OjuwU