Recent Questions Javascript Menu Dtree
Q: As a part-time webdeveloper I have gotten very interested in your product. I really appreciate a number of things
- it's very flexible
- it's very easy to work with
- examples nicely show the capabilities
But I have a couple of questions:
- When opening a menu, there is an option for keeping the menu-item that has been pressed hightlighed (so that the user can see what he/she pressed). Is it possible, programmatically, to decide when this highlighting should be removed? The scenario is that, when a menu-item is clicked the used might browse for a couple of pages within the context defined by the menu-item, but when the user leaves, the menu-item should no longer be highlighted. I will (programmatically) decide the context, but is it possible for me to interact with the menu, and for example decide explicitly which menu should be highlighted?
- Our design department would like the menu containing the elements: "Skovdrift, Juletreer, Skovrejsning, etc". Please notice that "Brende" is supposed to show a menu item that is hightlighted. Is is possible to create this menu such that it is dynamic and each item is text-based (and not based on two pictures for each menu-entry: hightlighted and not)? I've been wondering how to solve this problem, but I cannot figure out a solution. The problem that I is stuck at, is how organise this speciel "frame" around each menu-element. Something that be partly accomplished using "arrowImageMain", but that does not bring me all the way. Please notice that the menu-items might not have any sub-menu.
A: I suppose that you're saying about
var pressedItem=-2;
Defines an item that will appear in the highlighted state
(-2 - normal mode, -1 - toggle mode is active, but highlighted item not defined, 0,1,2,3,... - # of pressed item including separators)
This parameter will not approach you.
You should 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: Can I use javascript to get the object (getElementByID). If not howdo I hide my dropdown menu on print?
A: You can add a new button to print your page and call onClick event, soyou should write:
<body ....
onClick="document.getElementById('dm0m0').style.visibility='hidden'; window.print();">
...
</body>
Or you can use the same javascript code from your menu item.
For example:
var menuItems = [
["Print", "javascript:document.getElementById('dm0m0').style.visibility='hidden';
window.print();", icon1, icon2],
];
But if you want to hide the menu when your customers push "File/Print"you should write so:
You must create two functions, for example:
function myprint()
{ document.getElementById('dm0m0').style.visibility='hidden';
window.print();
}
function myprint2()
{ document.getElementById('dm0m0').style.visibility='visible';
window.print();
}
You should add this functions into your code.
And then you must write so:
window.onbeforeprint = myprint;
window.onafterprint = myprint2;
Q: When you hover over words the background color is light blue - How do I change dhtml context menu so that the color when you hover over items is different?
A: You should change the following parameter:
var itemBackColor=["#FCEEB0","#65BDDC"];
Q: Is it possible to have the "parent" item be purely an image but the dropdown portion of the menu being in regular text?
What we want to do is show emulate a basic text look for the main menu headings but the font is a special font so we have to use an image. When hovered over we'd like to replace the image (i.e do a rollover) with the same text but a different color.
A: Yes you can create such menu.
You should use images for the main items.
You should write your menu items in the following way:
["","", "images/vista1/btn_black.gif", "images/vista1/btn_black_blue.gif", , , , , , ],
["","", "images/vista1/btn_black.gif", "images/vista1/btn_black_blue.gif", , , , , , ],