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: I am having a problem creating a submenu. I did not get any js errors but nothing happens.
What I have found is that even when I have dynamic=1;
I was getting an error saying object expected so I added the dmenu_dyn.js manually (i.e. <scripttype="text/javascript"src="../../Javascript/menu/dmenu_dyn.js"></script>) but now get no errors but no submenu is created.
Do I have to add all the js files in the menu folder manually as I thought it was just
<scripttype="text/javascript"src="../../Javascript/menu/dmenu.js"></script>
that was needed.
All, I am trying to add a submenu under the challenge topmenu.
function addChallengeItems(){
dm_ext_createSubmenu(0, 0, 3, ['Buy Deluxe Menu Now!', "order-deluxe-menu-purchase.html", "", "", "Buy Deluxe Menu Now!", "_blank"]);
}
And then a href that calls addChallengeItems()
<ahref="javascript:addChallengeItems();">add</a>
A: There is no need to add all engine files into your menu folder.
You can add only
dmenu.js
dmenu_dyn.js
More info about Description of Files you can find here:
http://deluxe-menu.com/description-of-files-info.html
Please delete also the following line from your code
<script type="text/javascript"src="../../Javascript/menu/dmenu_dyn.js"></script>
Try that.
Q: What I try to make is a menu dhtml with items having a border of only 1 px, also between the menu items. However it seems that Deluxe menu draws a 1 px line around every menu item giving an effective border line of 2 px between the area where the items touch each other. I want to have 1 px border also on the areas where the items touch each other.
Any suggestion how to fix this?
A: If you want to have the 1px border between the items only you canuse separators.
Please, see the following parameters:
//--- Separators
var separatorImage=""; //for subitems
var separatorWidth="5";
var separatorHeight="100%";
var separatorAlignment="right";
var separatorVImage="images/public/separator.gif"; //for the top items
var separatorVWidth="1";
var separatorVHeight="100%";
var separatorPadding="";
You should set a separator in the menuItems, for example:
var menuItems = [
["Home","index.cfm", , , , , , , , ],
["-"],
["About Us","about.cfm", , , , , , , , ],
];
Q: I activated option "state saving" but I think there's a problem;
when I open the website and click on an item of the menu, the pressed item becomes red
(up to now it's ok), but if I have topress F5 on the keyboard or press on the refresh button
to refresh the web page, the pressed item loses its color red.
I'd like the pressed item in the dhtml expand menu to maintain its color after the refresh command.
How can I solve this problem?
A: Tree Menu doesn't save a presseditem as it saves a tree state.
It works within 1 page only and if youreload the page you should set a pressed item using Javascript API:
function apyt_ext_setPressedItem(menuInd, itemID)
<script type="text/javascript">
var i = 4 //index of the selected item
onload=setPressed;
function setPressed()
{
dtreet_ext_setPressedItem(0,dtreet_ext_getItemIDByIndex(0, i));
}
</script>