Workaround: function OnClientItemClicking(sender, eventArgs) { if ($telerik.isTouchDevice) { if (eventArgs.get_item().get_postBack()) { $telerik.$('.rmRootToggle').trigger('touchend'); } } }
After clicking the item, the custom class is removed (the color of the item text is changed) <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head id="Head1" runat="server"> <style> .TopToolbarAlert, .TopToolbarAlert:link, .TopToolbarAlert:visited, .TopToolbarAlert:hover, .TopToolbarAlert:focus, .TopToolbarAlert:active { /*background-color: red;*/ color: red !important; } </style> </head> <body> <form id="form1" runat="server"> <telerik:RadScriptManager ID="RadScriptManager1" runat="server" /> <div> <telerik:RadMenu runat="server" ID="toolBarMenu"> <Items> <telerik:RadMenuItem ID="toolbarAlerts" runat="server" Text="Alerts" /> </Items> </telerik:RadMenu> </div> </form> </body> <script type="text/javascript"> $telerik.$(document).ready(function () { $telerik.$("#toolbarAlerts").addClass("TopToolbarAlert"); }); </script> </html>
While it is possible to set the item image using the item's CssClass property (http://www.telerik.com/help/aspnet-ajax/menu-appearance-item-images.html), it would be great to be able to set that directly to the span element with class rmLeftImage. Otherwise, it's necessary to use JavaScript or a CSS pre-processor like LESS to assign font-based images via classes (LESS would be required only to avoid duplicating CSS). The same would apply to just about any control that supports item images, e.g. TreeView.
Currently, as mobile browsers scroll bars are transparent and initially not visible, there is no indication to suggest to users that a mobile RadMenu can be scrolled down to see items not currently displayed. The suggestion it to add a mobile RadMenu visual indicator which shows to users that there are more items to be seen on scrolling the menu. It would enable customers to set a mobile RadMenu height that does not fit all items, and indicate to users that the expanded menu is scrollable.
The demo for the Adaptive Behavior of the menu control (tlrk.it/1ffjNFp) is not functioning on iOS devices. It works just fine on a desktop computer, but will not respond on an iOS device. On my iOS device, when I click (touch) the menu, it fails to expand. However, when I download the sample code project and upgrade it to the latest version of the dll, the menu works as expected.
Workaround: Set ClickToOpen = true in the control markup or if you want to set it only for the problematic browsers, use the following server-side code: protected void Page_Load(object sender, EventArgs e) { string userAgent = Request.UserAgent; string searchPattern = "ARM(?i)|Touch(?i)"; if (System.Text.RegularExpressions.Regex.IsMatch(userAgent, searchPattern)) { RadContextMenu1.ClickToOpen = true; } }