Recent Questions
Q: The cascading javascript menu does not spans frames or windows like Applets. Is that correct?
I was not able to make the sample to do it.
A: The DHTML Menu and Java Menu are built on different technologies.Java menus can create submenus that cover frames as a standard Windowssubmenus. DHTML Menu can't do that, because it's controls is htmlobjects, they can't overlap Windows controls. So, cascading javascript menu hascross-frame ability that allows it to show submenus in differentframes. But it can support this mode for the same domain only -- ifyou loaded a page to a subframe from another domain, the submenuscan't be shown in it. It happens because all browsers don't allow todo that for security reasons. Just imagine if you'll able to create aframeset from 2 frames, 1st frame will be with a zero height-width,and you'll load your page into it. Then user will go to another domainand your "invisible" frame will change a content of other pages!
See more info about cross-frame mode here:
http://deluxe-menu.com/cross-frame-mode-sample.html
Q: We recently bought your product.
We are developing in ASP.NET (VB) and we have a problem making you deluxe menu dynamic to suit our needs. We are using the Deluxe Menu.
The problem is each time a page with dhtml nav loads, we want to be able to generate the menuItems variable to reflect the options the individual user has, so it can't be hard coded into data.js it MUST be provided by an aspx file and attached somehow. I can't work out how to attach the variable (even a static one) as a separate file, so if you can do it with a static one, we can extend it to a dynamic one later.
For example the JS in the data.js file we want the MenuItem dimension you be loaded in a seperate file, some kind of include.
var menuItems = [
["Home","index.aspx", "", "", "", "_self", "", "", "", "", "", ],
["About","about.aspx", "", "", "", "_self", "", "", "", "", "", ],
["Contact","contact.aspx", "", "", "", "_self", "", "", "", "", "", ],
["Help","", "", "", "", "", "", "", "", "", "", ],
["|HowTo Register","RegHelp.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|FAQ","FAQ.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|Dos 'n' Don'ts","DoDont.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|Workshop","workshop.aspx", "", "", "", "_self", "", "", "", "", "", ],
["Gold Run","", "", "", "", "_self", "", "", "", "", "", ],
["|About Goldrun","goldrunAbout.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|Veiw Sites","GoldDistribSites.aspx", "", "", "", "_self", "", "", "", "", "", ],
["My Run","", "", "", "", "", "", "", "", "", "", ],
["|About","aboutmyrun.aspx", "", "", "", "_self", "", "", "", "", "", ],
["TICs","", "", "", "", "", "", "", "", "", "", ],
["|About","abouttics.aspx", "", "", "", "_self", "", "", "", "", "", ],
["Metro","", "", "", "", "", "", "", "", "", "", ],
["|About","aboutmetro.aspx", "", "", "", "_self", "", "", "", "", "", ],
["Distribution","", "", "", "", "", "", "", "", "", "", ],
["|About","DistribAbout.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|Status","DistribStatus.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|News","DistribNews.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|Display Units","DistribDisplay.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|Team","", "", "", "", "_self", "", "", "", "", "", ],
["|View Sites","DistribSites.aspx", "", "", "", "_self", "", "", "", "", "", ],
["|TIC Budget","", "", "", "", "_self", "", "", "", "", "", ],
];
Hope this makes sense.
A: You can move
var menuItems = [
...
];
dm_init();
dhtml nav code from your data file to your page (template) directly:
<script>
var menuItems = [
...
];
dm_init();
</script>Q: I am having some difficulty dynamically adding items to a tree javascript and menu.
I have a menu with one "root" item. I see the use of the "+" symbol within the item name. I do not see any documentation regarding this symbol, only "|". Can you explain?
If I have one menu with this one "root" node, how would I add an subitem to this root node?
Here is my code so far, but the inserted items appear to be at the same level as the root node.
var rootItem = dtreet_ext_getItemIDByIndex ( 0,0 );
var menuItem = new Array(10);
for ( var i = 0; i < producers.length; i++ )
{
var producer = producers[ i ];
menuItem[0] = producer.name;
dtreet_ext_insertItem ( 0, 0, i + 1, menuItem );
A: See dtreet_ext_insertItem () function has the following parameters:
function dtreet_ext_insertItem (menuInd, parentItemID, itemInd, itemParams)
Creates a new item and inserts it into a specified position.
menuInd - index of a javascript and menu on a page, >= 0.
parentItemID - ID property of an item.<, >= 0.
itemInd - index of a new item within the javascript and menu, >= 0.
itemParams - item parameters.
Notice that parentItemID is the Id property of the parent item (notindex). If you want to add top items you should set parentItemID=0.
itemInd - you should use this parameter if you want to add item in thespecific place, for example set itemInd=5 if you want to add itembefore the existing item with itemInd=5.
If you set itemInd=null the new item will be added at the end of this submenu and its index will be added automatically.
Q: Is there a javascript function that I can call that will return the ID or the Text value of the currently checked tab?
A: Unfortunately there is no such a function now.
There are such variables.
dtabs_tabs[menuN].b1 - dtabs_tabs[menuN].selectedItem
dtabs_tabs[menuN].JT0 - dtabs_tabs[menuN].selectedSmItem
But they contain the index of the selected menu item, not the ID.