Recent Questions
Q: How do I highlight the current tab in a hover tab menu?
A: This Tabs menu can save pressed item automatically within1 page only.
If you open another page, the menu can't remember presseditem.
You should do that manually using Javascript and menu parameters
( var bselectedItem and var var bselectedSmItem) or using any server-side script (php, asp, etc.)
Deluxe Tabs doesn't support API functions which can return theselected tab.
If your site is written on PHP you can set "bselectedItem" and "varbselectedSmItem" parameters based on your link beforeyou call your data file.
For example, move "bselectedItem" and " var bselectedSmItem" parametersfrom your data file to your code.
<TD vAlign=top align=left>
/* Select Tab */
<script type="text/javascript" language="JavaScript1.2">
var bselectedItem=<?php echo $seltabs; ?>;
var bselectedSmItem=<?php echo $selsmtabs; ?>;
</script>
<SCRIPT src="data.js" type=text/javascript></SCRIPT>
</TD>
You should define seltabs and selsmtabs using server side script.
You can also set it on every page before you call data.js file, forexample:
<TD vAlign=top align=left>
/* Select Tab */
<script type="text/javascript" language="JavaScript1.2">
var bselectedItem=4;
var bselectedSmItem=3;
</script>
<SCRIPT src="data.js" type=text/javascript></SCRIPT>
</TD>
Try that.
Q: I recently purchased DeluxeMenu for a project I'm working on and a new requirement has been submitted.
I am looking for a way to dynamically affectthe contents of menu javascripts
after it's been rendered(displayed) in the browser.
Can this be accomplished with this component?
A: 1) You can use API functions to affect items dynamically:
http://deluxe-menu.com/functions-info.html
2) Generate your menu items dynamically from database.
Unfortunately we don't have working example with ASP.
You may generate a menu from a database or XML using any server-side script, e.g., PHP, ASP, VB, etc.
However, these scripts don't work inside of Javascript .js files, so,
you should move parameters of a menu from a .js file into an html-page, e.g.:
<!-- Deluxe Menu -->
<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>
<!-- (c) 2008, http://deluxe-menu.com -->
<script type="text/javascript" language="JavaScript1.2">
// and describe parameters of a menu
var parameter1=value1;
var parameter2=value2;
etc.
var menuItems = [
// here you generate items using server-side scripts (php, asp, vb, etc.)
];
</script>>
The example of the menu working with PHP/MYSQL you can find here:
http://deluxe-menu.com/rq-loading-bar-MySQL-support.htmlQ: 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: I just need to know if there is a way of establishing the width at "runtime" in the javascript dynamic menu so that my frame in my frameset can be widened accordingly.
A: There are no special parameters for menu dimensions.
But you can use submenu IDs. For example, top-menu has ID"dmXXXm0"
Where XXX - menu index. So, first menu on the page has ID "dm0m0".
So, you can determine menu dimensions so:
document.getElementById('dm0m0').offsetWidth
document.getElementById('dm0m0').offsetHeight
You can also use Javascript API functions to take submenu IDs.