View Full Version : Pop It menu being hidden by list box in .net app

11-11-2005, 07:25 PM
so I'm using the Pop It Menu (http://www.dynamicdrive.com/dynamicindex1/popit.htm) on my site. and I have a couple of list boxes that need to be there.

the problem is that when I mouse over the menu half of it is being hidden behind the list box. I looked around for other fixes and found a previous thread with a similar problem but changing the z-index like it suggested does not work in this instance is there any way to fix this or do I need to get a different menu?

Thanks for the help

11-12-2005, 11:21 AM
As I recall, this is only a problem in IE. If that is the case yes, more than z-index is required to fix it. I'm not certain what you mean by a 'list box', I imagine you mean a select tag or some other form element. If this is the case, code needs to be added that will render the offending element invisible (hidden) while the Pop It is being displayed and then make it visible again when the Pop It disappears. In general, you give an id to the element or use its existing one if it has one and in the code where the Pop It is revealed add a line (shown in red):

function showmenu(e, which, optWidth){
if (!document.all&&!document.getElementById)
document.getElementById('id_of element').style.visibility='hidden'

Then where the Pop It disappears:

function hidemenu(){
document.getElementById('id_of element').style.visibility='visible'
if (window.menuobj)

If you have more than one element you need to hide/show, use additional lines. Refinements can be made so that only certain Pop Its will activate this extra code and it can be made so that browsers that do not need the extra code will ignore it but, the above is the general idea. To be more specific, I'd prefer to see your page:


11-14-2005, 07:59 PM
a list box is an asp.net control sort of like a dropdown list but with more options visible. changing the visiblity of the list box on mouse over of the menu is not a valid option at this point.

It turns out this is a bug with asp.net framework so there's really no way around it thanks for the help though.