We are providing HierMenus to you at no cost. HierMenus code requires a confirmed membership with internet.com. Please register by clicking here and come back soon to download your free copy of HeirMenus code.
Click Here to Register

Site Navigation
Bulletins
About
Documentation
FAQ
Samples
Known Issues
Technology Jobs

internet.commerce

Partner With Us














          
internet.com

IT
Developer
Internet News
Small Business
Personal Technology

Search internet.com
Advertise
Corporate Info
Newsletters
Tech Jobs
E-mail Offers

 
HierMenusCentral Enhance the Functionality of Your Web Site with DHTML HierMenus.
    

home / bulletins / 17

current page
 

HierMenus 6.0.3: Release Notes

D.M Ragle, June 12, 2006

A single--but potentially lethal, depending on your page layout--Internet Explorer problem is addressed with this HierMenus maintenance release. It is recommended that current users upgrade if they are--or expect that they may--encounter this specific issue.

As a reminder, though our release articles can be appreciated by and may be useful to all DHTML developers and HierMenus fans, the HierMenus script itself is a licensed product and its use on your site(s) requires a paid license agreement. Contact Barry Pullen or call him at (203) 662-2868 for further information (be sure to let him know how you plan to use HierMenus and tell him a bit about your organization, as well).

Body Sizes and Standard Pages

A HierMenus user recently pointed out to us this oddity.

In Internet Explorer, if you provide a standard document type (forcing IE into its "Standards" mode, see this explanation for more details), a body size (say, 96%), and have scrollable menus within which the scrollbar actually does appear (i.e., the browser window is small enough such that the menus will actually appear), then the menus, when they next appear, will hang the browser. The reason? A runaway loop based on the browser's resize handler. In brief: with this specific collection of parameters on a page, any hiding and showing of an Internet Explorer element (setting the object's visibility to "visible" or "hidden") automatically triggers a call to the resize handler of the page. This shouldn't happen with absolutely positioned objects; since hiding or showing an absolutely positioned object doesn't effect the sizing of the browser window. Nonetheless, this is the case.

In our previous release of HierMenus we documented another odd bug having to do with the display of largish menus in certain screen resolutions. To fix that issue, we temporarily hide the menu (assuming it's already visible) and then redisplay it each time the menu's scroll position is checked. Since this scrollcheck is applied each time a menu is repositioned, and since the menus are all automatically repositioned as the result of a window resize, we now inadvertantly trigger the loop described above: The window resizes, which repositions menus, which triggers scroll checks for the menu, which hides/redisplays the menu, which triggers a window resize...

To fix the problem, we're reintroducing an old trick in the DOM code only; specifically, we're checking the existing size of the browser window and applying our repositioning logic to existing menus only if the new browser window size differs from the old browser window size. In this way, our initial reposition of the menus will indeed trigger an additional call to the onresize handler; but the second call to our onresize handler will be silently ignored by HM (since the browser window's size did not actually change), breaking the cycle and allowing the browser (and HM) to continue.

UponDisplay / UponHide Fixed in ConvertArrays

If you're still using v4/5 array style configuration files (and we really hope you aren't), then you may have noticed that the UponDisplay and UponHide parameters were not properly translated to their HM6 equivalents. If this did happen to you then you've probably no doubt corrected the problem on your own by now; but just in case you haven't (and for new users) we've corrected this goof with this release.

Conclusion

The above two changes are the only changes made to HierMenus v6.0.3. Again, if you suspect these two problems may occur in your particular implementation, it is recommended that you apply the upgrade, which affects only the HM_ScriptDOM.js and HM_ConvertArrays.js.

current page
 

Internet.com
The Network for Technology Professionals

Search:

About Internet.com

Legal Notices, Licensing, Permissions, Privacy Policy.
Advertise | Newsletters | E-mail Offers

Created: 6/12/2006
Updated: 6/12/2006
URL: http://www.hiermenuscentral.com/bulletins/17/