Problem with divhider.js

Having problems with DHTML Menu? There is usually somebody here who knows the answer.
Post Reply
rmamidipally
Advanced
Advanced
Posts: 10
Joined: Tue Feb 21, 2006 3:35 pm

Problem with divhider.js

Post by rmamidipally »

Hi,
I am using a licenced version of Milonic menu.

I am using divhider.js to solve the Select Box problem.

But, the problem is ..

I have 5 menus in the menu pad.

1 2 3 4 5

I have to hide the <div> when the mouse pointer is on 2 or 4.
Till here it is fine. But when I am moving to any other menu from 2 or 4 with out taking the mouse out of the menu pad, the <div> is being hided for the other menus also, which should not be.

It is working fine if I take the mouse pointer out of the menu pad and goes on again.


Please help me.

Thanks,
Ravi.
User avatar
Andy
Milonic
Milonic
Posts: 3308
Joined: Sun May 19, 2002 8:23 pm
Location: Menu Developer
Contact:

Post by Andy »

Hi,

Do you have a URL that we can see, this will help us a lot.

Cheers,
Andy
rmamidipally
Advanced
Advanced
Posts: 10
Joined: Tue Feb 21, 2006 3:35 pm

Post by rmamidipally »

Hi Andy,

The problem I am facing is in a site (http://www.myuhc.com) which is in production.And I am giving support for the same.That is why I can not provide you the URL where I am facing the problem.If required I can give you the licence number.
Otherwise, can I send you the screen shot? so that you can visualise the problem.


Please help me in solving teh problem.

Thanks,
Ravi.
User avatar
John
 Team
 Team
Posts: 5967
Joined: Sun May 19, 2002 8:23 pm
Location: Phoenix, AZ
Contact:

Post by John »

Unfortunately none of your suggestions will help us. Next best is to post all your code here - don't forget to use the code /code tags. We'll need your HTML, -data file, and the exact versions of both the menu and divhider codes.
John
rmamidipally
Advanced
Advanced
Posts: 10
Joined: Tue Feb 21, 2006 3:35 pm

Post by rmamidipally »

Hi,

I am sending the code for teh requested files.
Please let me know if you have any queries and help me soon in solving the problem.

Thanks,
Ravi.

HTML File

Code: Select all

<%@ taglib uri="/WEB-INF/tld/c.tld" prefix="c" %>
<%@ taglib uri="/WEB-INF/tld/fmt.tld" prefix="fmt" %> 
<%@ taglib uri="/WEB-INF/tld/personalization.tld" prefix="psn" %>
<%@ taglib uri="/WEB-INF/tld/struts-bean.tld" prefix="bean" %>

<c:set var="m" scope="page" value="${sessionScope.MenuBean}"/>

<c:choose>
<c:when test="${empty m}">
	
</c:when>

<c:otherwise>


<bean:size id='mainMenuSize' name='m' property='parentMenuList' scope='page'/>

<fmt:setBundle basename="ApplicationResources"/>

<script type="text/javascript" src="/includes/dhtml/milonic_src.js"></script>
<script type="text/javascript" src="/includes/dhtml/divhider.js"></script>

<param copyright="JavaScript Menu by Milonic - http://milonic.com"></param>
<script	type="text/javascript">
<!-- 
if(ns4)_d.write("<scr"+"ipt language=JavaScript src=/includes/dhtml/mmenuns4.js><\/scr"+"ipt>");		
  else _d.write("<scr"+"ipt language=JavaScript src=/includes/dhtml/mmenudom.js><\/scr"+"ipt>"); 
 -->
</script>
<script type="text/javascript" src="/includes/dhtml/menu_data.js"></script>	

<script type="text/javascript" >
	
with(menuStyle=new mm_style()){
<psn:str psnName="mainMenuStyle"/>
oncolor="<psn:str psnName='mainMenuItemMouseOverColor' />";
offcolor="<psn:str psnName='mainMenuItemMouseOffColor' />";
}

subMenuStyle=new copyOf(menuStyle);
<psn:str psnName="subMenuStyle"/>
	
<c:forEach items="${m.parentMenuList}" var="pMenu" varStatus="ists">
with(milonic=new menuname("<c:out value='${pMenu.menuName}'/>")){
style=subMenuStyle;
itemheight=20;
itemwidth=215;
align="left";
top=<psn:str psnName="subMenuTopPos"/>;
	<c:forEach items="${pMenu.subMenuItems}" var="subMenu" varStatus="jsts">
		<c:if test="${!subMenu.hiddenInMenu}">
aI("text=<psn:str psnName='underlineTag'/><fmt:message key='${subMenu.linkNameKey}'/>;valigh=middle;url=<c:out value='${subMenu.menuUrl}'/>;onbgcolor=<psn:str psnName='subMenuItemOverBackgroundColor' />;offbgcolor=<psn:str psnName='subMenuItemOffBackgroundColor' />;target=<c:out value='${subMenu.target}'/>;targetfeatures=<c:out value='${subMenu.targetFeatures}'/>;<c:out escapeXml='false' value='${subMenu.clickFunction}'/>");
		</c:if>			
	</c:forEach>
<psn:str psnName='menuSubBottom'/>
}
</c:forEach>
	
</script>

<table cellpadding="0" cellspacing="0" border="0" width="100%" align="center">
	<tr><td class="menucellextendedbg" width="100%">
<SCRIPT TYPE="text/javascript">

//-- USER AGENT OBJECT

function clsUa(){
	this.ua=navigator.userAgent.toLowerCase();
	this.mac=(this.ua.indexOf("mac")!=-1);
	this.w3c=(document.getElementById)?1:0;
	this.ieX=(document.all)?1:0;
	this.ie5=(this.ieX && this.w3c)?1:0;
	if (!this.w3c) alert('\nYour browser may not be supported by this website.\n\nWe encourage you to upgrade.\n');
}

objUa = new clsUa();
var macIE5 = (objUa.ie5 && objUa.mac);

if (!macIE5) {		
	document.write('<table cellpadding="0" cellspacing="0" border="0" width="750" align="center">');
	document.write('<tr>');
	document.write('<td align="right" valign="top" class="mainmenu_leftconner">');
	document.write('<psn:img psnName="menuConnerLeftImg" />');
	document.write('</td>');
	document.write('<td align="left" valign="middle" class="mainmenu_tablecell" nowrap>');
	with(milonic=new menuname("Main Menu")){
	style=menuStyle;
	position="relative";
	alwaysvisible=1;
	orientation="horizontal";
	align="center";
	menuheight=31;
	itemheight=31;
	<c:forEach items="${m.parentMenuList}" var="pMenu" varStatus="ists">
	<c:if test="${!pMenu.hiddenInMenu}">	
	aI("text=<psn:str psnName='underlineTag'/><fmt:message key='${pMenu.linkNameKey}'/>;itemwidth=<c:out value='${pMenu.itemWidth}'/>;onbgcolor=<psn:str psnName='mainMenuItemOffBackgroundColor' />;offbgcolor=<psn:str psnName='mainMenuItemOverBackgroundColor' />;url=<c:out value='${pMenu.menuUrl}'/>;showmenu=<c:out value='${pMenu.menuName}'/>;");		
	</c:if>	
	</c:forEach>
	}
	drawMenus();		
	document.write('</td>');
	document.write('<td align="right" valign="top" class="mainmenu_rightconner">');
	document.write('<psn:img psnName="menuConnerRightImg" />');
		
	document.write('</td></tr></table>');
} else {
	document.write('<table  width="750" cellpadding="0" cellspacing="0" class="noscriptOutterTable" align="center">');
	document.write('<tr><td width="100%">');
	document.write('<table cellpadding="0" cellspacing="0" border="0" width="748">');
	document.write('<tr>');
	document.write('<td width="20" valign="top" class="mainmenu_leftconner">');
	document.write('<psn:img psnName="menuConnerLeftImg" /></td>');

	<c:forEach items="${m.parentMenuList}" var="pMenu" varStatus="ists">
		<c:if test="${!pMenu.hiddenInMenu}">
		document.write('<td align="center" valign="middle" class="noscriptnavbar" width="<c:out value='${pMenu.itemWidth}'/>" height="33" nowrap>');			
		document.write('<a href="<c:out value='${pMenu.menuUrl}'/>" class="noscriptlink"><fmt:message key="${pMenu.linkNameKey}"/></a>');
		document.write('</td>');	
		<c:if test="${ ists.index < mainMenuSize -1 }">
		document.write('<td class="noscriptnavbar" width="1">');
		document.write('<psn:img psnName="menuDividerImage"></psn:img>');
		document.write('</td>');
		</c:if>	
		</c:if>
	</c:forEach>
	document.write('<td width="80%" class="noscriptnavbar">&nbsp;</td>');

	document.write('<td align="right" valign="top" class="mainmenu_rightconner">');
	document.write('<psn:img psnName="menuConnerRightImg" />');
		
	document.write('</td></tr></table>');
	document.write('</td></tr></table>');		
}
	

</SCRIPT>			
<noscript>
<table  width="750" cellpadding="0" cellspacing="0" class="noscriptOutterTable" align="center">
	<tr><td width="100%">
<table cellpadding="0" cellspacing="0" border="0" width="748">
	<tr>
		<td width="20" valign="top" class="mainmenu_leftconner">		
				<psn:img psnName="menuConnerLeftImg" /></td>
		<c:forEach items="${m.parentMenuList}" var="pMenu" varStatus="ists">
			<c:if test="${!pMenu.hiddenInMenu}">
			<td align="center" valign="middle" class="noscriptnavbar" width="<c:out value='${pMenu.itemWidth}'/>" height="33" nowrap>			
				<a href="<c:out value='${pMenu.menuUrl}'/>" class="noscriptlink"><fmt:message key='${pMenu.linkNameKey}'/></a>
			</td>
			<c:if test="${ ists.index < mainMenuSize -1 }">
				<td class="noscriptnavbar" width="1">
				<psn:img psnName="menuDividerImage"></psn:img>
				</td>
			</c:if>	
			</c:if>
		</c:forEach>
		<td width="80%" class="noscriptnavbar">&nbsp;</td>
		<td align="right" valign="top" class="mainmenu_rightconner">
			<psn:img psnName="menuConnerRightImg" /></td>
	</tr>
	</table>
	</td>
	</tr>
</table>
</noscript>

</td></tr></table>
<%--style type="text/css">
<!-- This is a part to provide sitemap links inside & hidden in the menu tile. 
It may be needed for future testing purpose. (Jason R.3.8 12/07/2004) -->
<!--
.hiddenSiteMapLayer {visibility:hidden;z-index:999999;position:absolute;top:0px;left:0px;width:600px;height:300px}
-->
</style>
<div id="hiddenSiteMap" class="hiddenSiteMapLayer"><jsp:include page="siteMapTile.jsp" /></div--%>

</c:otherwise>
</c:choose>

-data File

Code: Select all

_menuCloseDelay=100           // The time delay for menus to remain visible on mouse out
_menuOpenDelay=250          // The time delay before menus open on mouse over
_subOffsetTop=0             // Sub menu top offset (except the first level of sub menu)
_subOffsetLeft=0           // Sub menu left offset (except the first level of sub menu)

_W.ignoreCollisions=0
_CFix=true

divhider.js

Code: Select all

/*
   Milonic DHTML Menu Object Hiding Module divhider.js version 1.0 - November 3 2004
   This module is only compatible with the Milonic DHTML Menu version 5.16 or higher

   Copyright 2004 (c) Milonic Solutions Limited. All Rights Reserved.
   This is a commercial software product, please visit http://milonic.com/ for more information.
*/

// The idea is to declare the HTML Object you need to hide when a menu becomes visible
// Declare the Menu Name -> Object Reference followed by a semi colon
// M_hideMenus Syntax: "MenuName->ObjectReference;";

M_hideMenus = "Samples->formdiv1;milonic->formdiv1;"

function M_hideLayer(_mnu,_show){
	if(op7||ie55||ns6||ns7)return
	M_hdar=M_hideMenus.split(";")
	for(_Ma=0;_Ma<M_hdar.length;_Ma++){
		M_hdarI=M_hdar[_Ma].split("->")
		M_mnu=getMenuByName(M_hdarI[0])
		if(M_mnu>-1&&M_mnu==_mnu){
			M_gm=gmobj(M_hdarI[1])
							
			if(_show){
				if(ns4)M_gm.visibility="hide"; else M_gm.style.visibility="hidden"
			}
			else{
				if(ns4)M_gm.visibility="show"; else M_gm.style.visibility="visible"
			}		
		}
	}	
}
Thanks,
Ravi
rmamidipally
Advanced
Advanced
Posts: 10
Joined: Tue Feb 21, 2006 3:35 pm

Post by rmamidipally »

I have copied the code files.
Please look in to the problem and help me in finding the solution.
Please let me know if you need any more clarifications.

Thanks,
Ravi.
Post Reply