Pasting this code on a Razor page should help illustrate the problem:
<div id="strangeStore">
@(Html.Kendo().Menu()
.Name("Menu")
.Animation(animation => animation.Enable(false))
.Scrollable(true)
.OpenOnClick(click => click.RootMenuItems(true).SubMenuItems(true))
.Items(items =>
{
items.Add()
.Text("Products")
.Items(children =>
{
children.Add().Text("Furniture")
.Items(innerChildren =>
{
innerChildren.Add().Text("Tables")
.Items(iic =>
{
iic.Add().Text("Red");
iic.Add().Text("Green");
iic.Add().Text("Blue");
});
innerChildren.Add().Text("Chairs")
.Items(iic =>
{
iic.Add().Text("42");
iic.Add().Text("1337");
});
innerChildren.Add().Text("Sofas")
.Items(iic =>
{
iic.Add().Text("Soft");
iic.Add().Text("Hard");
});
innerChildren.Add().Text("Beds")
.Items(iic =>
{
iic.Add().Text("deadbeef");
iic.Add().Text("cafebabe");
});
});
children.Add().Text("Decor")
.Items(innerChildren =>
{
innerChildren.Add().Text("Curtains");
innerChildren.Add().Text("Blinds");
innerChildren.Add().Text("Rugs");
innerChildren.Add().Text("Carpets");
});
});
items.Add().Text("Events");
})
)
</div>
To see the problem, click in sequence: Products, Furniture, Tables, Decor
Expected result: Products and its Decor child menu is open
Actual result: the Tables child menu is also open
Changing to ".Scrollable(false)" seems to fix the problem, but makes it hard to use a multi-level menu with many items on small screens😅
Any other suggestions on how to fix this?
Even more strange behaviour that can be demonstrated with the same code:
Inner inner children menus seems to open up at strange positions. Disabling scrolling seems to fix the problem. Please advise how we can enable scrolling with multiple levels of children (example: inner inner inner inner children).