在 iframe 内点击按钮时切换 Kendo 拆分器
Toggle Kendo Splitter on button click inside iframe
我的Kendo分离器如下
@(Html.Kendo().Splitter()
.HtmlAttributes(new { style = "height:590px;", id = "mainSplitter" })
.Orientation(SplitterOrientation.Horizontal)
.Panes(horizontalPanes =>
{
horizontalPanes.Add()
.HtmlAttributes(new { id = "left-pane" })
.Size("246px")
.Collapsible(true)
.Content(@<text></text>);
horizontalPanes.Add()
.HtmlAttributes(new { id = "right-pane", style = "overflow:hidden;" })
.Content(@<iframe id="tabsContent_iframe" src='' data-src='' style="width:100%;height:100%;"></iframe>
);
})
)
在我的 POC 中,我在分离器外有一个按钮,用于切换 left-pane
,效果很好。
现在,如果我在 iframe 中使用相同的按钮并拨打电话。它不起作用。
我尝试了以下几种方法:
1)
var parentSplitterId = parent.$('#mainSplitter').data("kendoSplitter");
var parentLeftTogglePane = parent.$('#full-pane');// , window.parent.document);
parentSplitterId[parentLeftTogglePane.width() > 0 ? "collaspe" : "expand"](parentLeftTogglePane);
2)
var parentSplitterId = window.parent.document.getElementById('mainSplitter');
var parentLeftTogglePane = $('#full-pane', window.parent.document);
var splitter = $("#parentSplitterId").data("kendoSplitter");
splitter[leftTogglePane.width() > 0 ? "collaspe" : "expand"](leftTooglePane);
我无法理解哪里出了问题或遗漏了什么。请带我到这里。
谢谢
解决方法很简单,因为您拼错了单词 collapse
,您写成了 collaspe
。
我的Kendo分离器如下
@(Html.Kendo().Splitter()
.HtmlAttributes(new { style = "height:590px;", id = "mainSplitter" })
.Orientation(SplitterOrientation.Horizontal)
.Panes(horizontalPanes =>
{
horizontalPanes.Add()
.HtmlAttributes(new { id = "left-pane" })
.Size("246px")
.Collapsible(true)
.Content(@<text></text>);
horizontalPanes.Add()
.HtmlAttributes(new { id = "right-pane", style = "overflow:hidden;" })
.Content(@<iframe id="tabsContent_iframe" src='' data-src='' style="width:100%;height:100%;"></iframe>
);
})
)
在我的 POC 中,我在分离器外有一个按钮,用于切换 left-pane
,效果很好。
现在,如果我在 iframe 中使用相同的按钮并拨打电话。它不起作用。
我尝试了以下几种方法:
1)
var parentSplitterId = parent.$('#mainSplitter').data("kendoSplitter");
var parentLeftTogglePane = parent.$('#full-pane');// , window.parent.document);
parentSplitterId[parentLeftTogglePane.width() > 0 ? "collaspe" : "expand"](parentLeftTogglePane);
2)
var parentSplitterId = window.parent.document.getElementById('mainSplitter');
var parentLeftTogglePane = $('#full-pane', window.parent.document);
var splitter = $("#parentSplitterId").data("kendoSplitter");
splitter[leftTogglePane.width() > 0 ? "collaspe" : "expand"](leftTooglePane);
我无法理解哪里出了问题或遗漏了什么。请带我到这里。
谢谢
解决方法很简单,因为您拼错了单词 collapse
,您写成了 collaspe
。