Recent Questions
Q: How to modify data.js in deluxe menu to change the font color if the user click on css pull down menu.
Expl. If the user click on 'Webdesign' and then on 'Thema Webdesign' the color dosn't change to #333. So the user don't now, where is it. Please test it on www.media-design.ch. Thank!
A: Deluxe Tree 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 dtreet_ext_setPressedItem (menuInd, itemID)
<script type="text/javascript">
var i = <?php echo $selitem; ?>;
onload=setPressed;
function setPressed()
{
dtreet_ext_setPressedItem(0,dtreet_ext_getItemIDByIndex(0, i));
}
</script>
You should define selitem using server side script.
Q: We are registered users of the Deluxe Menu software. Today I tried to use the Javascript API, but there is something I do not understand and want to ask for support.
First, I set up a very simple menu:
var menuItems=[
['Menu 1'],
['|Submenu 1'],
['Menu 2'],
['|Submenu 2'],
];
This menu is built via dm_init().
Then, I inspect the menu (in Firebug):
>>> dm_ext_getSubmenuParams(0, 0)
["dm0m0", 2, "", 0, 1]
>>> dm_ext_getSubmenuParams(0, 1)
["dm0m1", 1, "dm0m0i0", 1, 0]
>>> dm_ext_getSubmenuParams(0, 2)
["dm0m2", 1, "dm0m0i1", 1, 0]
Ok, there are three submenus. Now I am going to delete one of them:
>>> dm_ext_deleteItem(0, 0, 1)
"Menu 2" disappears on the screen, this works as expected. But now when I re-inspect the menu using the API, I find that the API reports exactly the same as before:
>>> dm_ext_getSubmenuParams(0, 0)
["dm0m0", 2, "", 0, 1]
>>> dm_ext_getSubmenuParams(0, 1)
["dm0m1", 1, "dm0m0i0", 1, 0]
>>> dm_ext_getSubmenuParams(0, 2)
["dm0m2", 1, "dm0m0i1", 1, 0]
So, it seems the report function continues to know about the original menu structure and reflects it. Am I using the API in a wrong way?
The problem I want to solve is to remove the entire menu dinamico dhtml, in order to rebuild it dynamically. Because I did not see a function aimed to this functionality, my plan was to delete all main menu entries subsequently until the main menu inspector no longer reports an entry. Is there (a better) way to achieve this?
A: Unfortunately, dm_ext_deleteItem() only change visibility of theseitems.
It doesn't delete them completely.
We'll try to fix it in the next versions of Deluxe Menu.
Q: I downloaded the trial version, so I’m doing some testing....
I can’t highlight the selected dhtml pop up menu item of the current page. The var ttoggleMode is enabled and
tpressedFontColor = "#AA0000
This is caused by the trial version?
A: Please, check the following parameter
var pressedItem=-2;
This parameter sets an index of an item that will be highlighted by default.
-2 - the toggle mode is disabled;-1 - the toggle mode is enabled, bu
t no items highlighted by default;
0,1,2,3,... - index of highlighted item in a top-menu.
The menu has only two states normal and mouseover. We'll try to add the pressed state in the future.
You can 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.
You can also set the correct
var pressedItem=1;
parameter on each html page.
Q: When I export the file sometimes the links doesn't work in css tabbed menu
A: See, you can use links if you have
var tabMode=1;
only.
If you have
var tabMode=0;
You should use the ID of the DIV.
But you can try to open your pages using different targets in thefollowing way
["tab text", "javascript: window.open('test.html', 'frameName')", ...],
["tab text", "javascript: window.open('http://deluxe-tabs.com/test.html', '_self')", ...],
["tab text", "javascript: window.open('html/test.html', '_blank')", ...],
Where frameName - the name of the frame where to open the page test.html.
Using this method you can create Deluxe Tabs in var tabMode=0; and var tabMode=1;