Recent Questions Javascript Tree Contents Chm
Q: How do I make the top nav buttons exactly the same width for each button?
Total menu width is 743px and I have 6 buttons I want the width of each button to be fixed at 123px.
I set var menuWidth="743" but it averages out the buttons based on the text.
A: You should use individual item styles. For example:
var itemStyles = [
["itemWidth=123px"], //style 0
];
var menuItems = [
["Home","testlink.html", , , , , "0", , , ], //style 0
["Product Info","", "deluxe-menu.files/icon1.gif", "deluxe-menu.files/icon1o.gif", , , "0", , , ], //style 0
Q: I am using cross frame menu dropdown. I have three frames: Top, Left and main (middle).
I am using the script and data from your sample file; it works fine. Only problem is submenu is offset to the right. It does not show up exactly down below the top menu.
What could be the problem?
A: JavaScript Tree Menu doesn't work correctly (incorrect submenu position) if youhave complex frame structure.
The problem is in a structure of your frameset.
Mozilla browsers can't determine absolute coordinates for a frame, so submenus drop down with an offset.
You should create, for example, the following frameset structure:
--|------------
| menu
--|------------
|
| submenus
|
Now a top row has 2 columns and all browsers can determine a width of the 1st column in the second row.
You should write init function in the following way in that case:
dm_initFrame("mainframe",1,3,0);
Q: Will all your dhtml menu samples work cross-frame?
A: See how should you create cross frame menu:
1. To initialize the cross frame menu call dm_initFrame()
function instead of standard dm_init() function within data.js file:
dm_initFrame(framesetID, mainFrameInd, subFrameInd, orientation);
framesetID - id attribute of the frameset;
mainFrameInd - index of the main frame (where the top-menu is placed), >=0;
subFrameInd - index of the subframe (where the submenus will be shown), >=0;
orientation - frame orientaion: 0 - top-to-bottom, 1 - left-to-right; 2 - bottom-to-top; 3 - right-to-left.
So you should create your menu in Deluxe Tuner, save it.
Create html file with your frame set.
Set ID for the first frameset:
<FRAMESET id=frmSet rows=220,*>
<FRAME id=frame1 src="JavaScript Tree Menu Samples_files/cross-frame-horizontal-1.htm"> //menu frame
<FRAME id=frame2 name=frame2 src="JavaScript Tree Menu Samples_files/testlink.htm"> //content frame
</FRAMESET>
Then you should open your data file in any text editor and change
dm_init(); for example to dm_initFrame("frmSet", 0, 1, 0);
You'll find more info here:
http://deluxe-menu.com/cross-frame-mode-sample.htmlQ: we want to be able to specify a certain height (or number of items) for the main menu after which a new column is created.
A: Unfortunately it is not possible to specify a number of items after which a new column is created.
But you can use blank items and create Individual Style for theseitems.
For example:
["| ","", "", "", "", "", "0", "", "", ], //empty item
["|Item 42","", "", "", "", "", "", "", "", ],
["| ","", "", "", "", "", "0", "", "", ], //empty item
["|Item 44","", "", "", "", "", "", "", "", ],