Hello,
I have a WebDataMenu inside of a tab of an AjaxControlToolkit TabContainer, with a few WebImageButtons arranged horizontally. The page renders correctly in IE9, Chrome, etc, but when I switch my IE to IE8 mode and IE8 standards, I see a javascript error in some of the javascript code, in a function named __resizeListItems (line 468 is bolded and underlined):
Line: 468Error: Invalid argument.
__resizeListItems:function(item){ /* 2010-02-18 Bug#16534 - get the group height and go resize inner LI's * do not set line-height accordingly, eventhough it is the only way * to make texts appear aligned vertically. * setting line-height will propaged throughout the children which is not desired! */ var group = this.get_element().getElementsByTagName("UL")[0]; if(!$util.isNullOrUndefined(item)) { group = item._get_subgroup(); }
var childItem = this.getItems().getItem(0); var grpSettings = this._menuGroupSettings; if(!$util.isNullOrUndefined(item)) { childItem = item.get_childItem(0); grpSettings = item.get_itemsGroupSettings(); }
if($util.isNullOrUndefined(childItem) || $util.isNullOrUndefined(grpSettings)) return;
if(grpSettings.get_orientation() == $IG.Orientation.Vertical) return;
if(childItem._element.style.height != "" || childItem._element.style.height.length > 2) return;
var MaxHeight = 0; var nChildItem = childItem; while(nChildItem != null) { if(!nChildItem.get_isSeparator()) { (nChildItem._element.offsetHeight > MaxHeight) ? MaxHeight = nChildItem._element.offsetHeight: null; } nChildItem = nChildItem.get_nextItem(); }
if(childItem != null) { MaxHeight -= $util.toIntPX(null, 'paddingBottom', 0, childItem._element); MaxHeight -= $util.toIntPX(null, 'paddingTop', 0, childItem._element); MaxHeight -= $util.toIntPX(null, 'borderTopWidth', 0, childItem._element); MaxHeight -= $util.toIntPX(null, 'borderBottomWidth', 0, childItem._element); MaxHeight -= $util.toIntPX(null, 'marginBottom', 0, childItem._element); MaxHeight -= $util.toIntPX(null, 'marginTop', 0, childItem._element); MaxHeight -= $util.toIntPX(null, 'paddingBottom', 0, group); MaxHeight -= $util.toIntPX(null, 'paddingTop', 0, group); MaxHeight -= $util.toIntPX(null, 'borderTopWidth', 0, group); MaxHeight -= $util.toIntPX(null, 'borderBottomWidth', 0, group); MaxHeight -= $util.toIntPX(null, 'marginBottom', 0, group); MaxHeight -= $util.toIntPX(null, 'marginTop', 0, group); }
while(childItem != null) { if(!childItem.get_isSeparator()) { childItem._element.style.height = MaxHeight + 'px'; //childItem._element.style.lineHeight = groupHeight + 'px'; } childItem = childItem.get_nextItem(); }},
Hello spare,
Thank you for posting in the community.
I have researched this matter using version 12.1.20121.1005 but am so far unable to replicate the described behavior. Going through the 12.1 scripts however, it seems that the resizeListImtes functions has changed since your version, therefore upgrading your product may resolve the matter. It would be helpful to know your exact product version in order to confirm this.
Please feel free to contact me if you need more information.
Hi Petar,
I'm using 10.2.20102.2248, I inherited some code for a product and our infragistics license has expired for upgrades. At this point, I'm stuck with the version that we have.
I'm attaching a file that demonstrates the issue. When i run this with IE8, I never see the tabs on the page. Commenting out the WebDataMenu, the javascript error does not occur and I can use the tabs as expected.
ThanksSteve