2
我似乎無法弄清楚爲什麼劍道無法正常工作。我試圖在kendo窗口上創建一個自定義按鈕,將窗口擴大到75%,然後再回到34%。如何創建一個快速擴展到基諾UI窗口的圖標變化
VIEW
@(Html.Kendo().Window()
.Name("stockLineWindow").HtmlAttributes(new { @class = "windows" })
.Title("Stock")
.Draggable()
.Resizable(resizable => resizable.Enabled(true))
.Visible(false)
.Scrollable(false)
.Actions(actions => actions.Minimize().Maximize().Custom("arrow-chevron-right"))
)
JAVASCRIPT
var stkWrapper = $("#stockLineWindow").data("kendoWindow");
var expand = stkWrapper.wrapper.find(".k-i-arrow-chevron-right");
expand.click(function (e) {
stkWrapper.setOptions({
width: "75%"
});
$(this).removeClass("k-i-arrow-chevron-right");
$(this).addClass("k-i-arrow-chevron-left");
e.preventDefault();
});
var contract = stkWrapper.wrapper.find(".k-i-arrow-chevron-left");
expand.click(function (e) {
stkWrapper.setOptions({
width: "34%"
});
$(this).removeClass("k-i-arrow-chevron-left");
$(this).addClass("k-i-arrow-chevron-right");
e.preventDefault();
});
兩件事情都發生在這裏:
-
當窗口打開時,我能夠運行擴大
- 。但DOM在setOption之後重置並繼續顯示'>'而不是更改類。
後它擴展當我改變javascript來這一點,從來沒有縮回甚至:
var stkWrapper = $("#stockLineWindow").data("kendoWindow"); var expand = stkWrapper.wrapper.find(".k-i-arrow-chevron-right"); expand.click(function (e) { if (stkWrapper.options.width <= "75%") { stkWrapper.setOptions({ width: "75%" }); e.preventDefault(); } else { stkWrapper.setOptions({ width: "34%" }); } e.preventDefault(); });
它發生一次,不會再發生。除非我重新加載窗口。我想要做的只是Kendo窗口上的簡單展開和合約按鈕。我不確定這是如何完成的。
你太棒了!現在我試圖在用戶手動調整大小時讓該按鈕更改圖標。可能是媒體查詢。 – NeoSketo
@NeoSketo記住窗口小部件具有['resize'](http://docs.telerik.com/kendo-ui/api/javascript/ui/window#events- resize)事件。也許你可以在那裏做到這一點。 – DontVoteMeDown
是的,沒有工作!謝謝你,朋友! – NeoSketo