Recent Questions
Q: Hello. We need some tech support regarding our deluxe menu.
All of our pages that have the menu code on them are suddenly giving status bar errors that say: "Done, but with errors on page"
When pulling up the error details, the dialog says:
Line: 2
Char: 1
Error: Syntax error
Code: 0
On pages that do not have the menu at all, we're not getting the error.
A: Now you have such code:
<SCRIPT LANGUAGE="" type="text/javascript">
<!--
var dmWorkPath = "menu/";
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
//-->
</SCRIPT>
So, your menu cannot find var dmWorkPath = "menu/"; parameter on yourpage.
Try to write your code in the following way:
<SCRIPT type="text/javascript"> var dmWorkPath = "menu/";</script>
<SCRIPT LANGUAGE="" type="text/javascript" src="menu/dmenu.js"></SCRIPT>
<!-- (c) 2006, http://deluxe-menu.com -->
Q: Is there a way to capture user click event just like the one in the javascript menu sliding?
A: Unfortunately, you can't assign onmouseover/onClick/onContextMenu event to each item.
However, you can achieve this by using standard html objects within items, for example:
var menuitems = [
["<div onContextMenu='your_code_here'>item text</div>", ""]
];
Q: Can you please give me an example of how I would return the full path to the selected item of the web site menu?
A: See the following example:
function getFullPath(mInd){
var result='';
// get pressed item
var params = dm_ext_getMenuParams(mInd);
if (!(params[2]>=0)) return '';
function getPathForItem(mInd,smInd,itInd){
// get for this item
var params = dm_ext_getItemParams(mInd,smInd,itInd);
var result = params[2]+ '('+ params[3]+')';
// find root item id
if (smInd <= 0) return result;
params = dm_ext_getSubmenuParams(mInd,smInd);
for ( var smInd_=0;smInd_ for ( var itInd_=0;itInd_ itParam = dm_ext_getItemParams(mInd,smInd_,itInd_);
if (itParam[0]=arams[2])// id
return result + '->' + getPathForItem(mInd,smInd_,itInd_);
}
}
return result;
};
return getPathForItem(mInd,params[1],params[2]);
}
Q: How change the color of the link in the dhtml vertical menu if the link is already visited.
A: Deluxe Menu has only two states normal and mouseover,
butyou can highlight menu items in two ways:
Try to do the following things:
- delete var pressedItem=1; parameter from your data file
- set correct parameter on each page before you call data file, forexample:
<noscript><a href="http://deluxe-menu.com">Javascript Menu by Deluxe-Menu.com</a></noscript>
<script type="text/javascript"> var dmWorkPath = "menudir/";</script>
<script type="text/javascript" src="menudir/dmenu.js"></script>
<script type="text/javascript"< var pressedItem=3;</script>
...<script type="text/javascript" src="menudir/data.js"></script>
You can also set a pressed item using Javascript API:
function dm_ext_setPressedItem (menuInd, submenuInd, itemInd, recursion)
Sets a current pressed item.
menuInd - index of a menu on a page, >= 0.
submenuInd - index of a submenu, >= 0.
itemInd - index of an item, >=0.
recursion = true/false - highlight parent items.
But notice, to use dm_ext_setPressedItem() you should know ID of selected item and subitem.
You can't get this ID after you reload your page. That is why you should write your own code on PHP.
You can find more info here:
http://www.deluxe-menu.com/highlighted-items-sample.html