Recent Questions
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.
Q: I have another question:
Menu behavior in SAFARI is does not properly work compared to EXPLORER.
If you have a look at the site via SAFARI, please do the following:
Example:
Under menu "Projets" select "par pays" then "Afrique" then "Algerie".
It will then show a left hand menu. Please select "2008/2010".
It will correctly show content.
Then if you try to select again via menu "Projets"; the html menu navigation does not show anymore the submenus. You still need to click a menu without submenus, like "News", and then afterwards you can click "Projets" and the system will again show submenus.
This strange behaviour does not appear in EXPLORER nor in FIREFOX.
A: The problem is in your frame structure after you open "Projets" select "par pays" then "Afrique" then "Algerie".
Your menu won't work correctly with such frame structure.
You should use the following frame structure for all pages at once:
--------------------------------------------------------
topFrame with the html menu navigation
--------------------------------------------------------
Algerie_leftFrame |
with | Algerie_mainFrame
Tree Menu |
--------------------------------------------------------
bottomFrame
--------------------------------------------------------
and write your init function in the following way:
dm_initFrame("frmSet", 0, 2, 0);
Or you shouldn't use Algerie_leftFrame and Algerie_mainFrame at all (use one mainFrame) and write your init function in the following way:
dm_initFrame("frmSet", 0, 1, 0);
Q: Buttons are working great! Client would now like to have the rollover image stay active on the page they are on. They would like the button to stay white when you navigate to a particular page, i.e. If you click on "Press", when you get to that page, the button stays white, while all the others react in the normal manner. Is this possible?? I have seen it on other sites and it seems like it should be possible. Please let me know. I believe it could be done by creating a separate menu for each page, but that seems like a lot of work. I am sure you have a solution.
A: The menu has only two states normal and mouseover.
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.
Q: I already have your product. I need to know if I can call js functions using the .js file in java menu sample.
A: You can use your own javascript functions in the menu items.
You should paste "javascript:some_function()" into item's link field, for example:
var menuItems = [
["text", "javascript:your_function(...)", ...]
];
var menuItems = [
["item text", "javascript:alert('Hello World')", , , , ,]
];