Recent Questions
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: For any reason dropdown menu in javascript know shows incorrect accented characters.
A: You can save your data file in UTF-8 in Windows version of DeluxeTuner v3.2.7.
You should turn on "Tools/Use utf8 encode" property.
In that case your data file will be saved in UTF-8 encode.
Enter these symbols and save your data file.
If you don't want to use UTF-8 encode on your page you should turn off"Tools/Use utf8 encode" property, save your data file and manuallychange your letters in any text editor.
You can also replace your letters with special sets, for example
É - Capital E, acute accent - E
ç - Small c, cedilla - c
var menuItems = [
["É....","testlink.html", "", "", "", "", "", "", "", ],
["ç....","testlink.html", "", "", "", "", "", "", "", ],
Q: Is it possible to generate Kaspersky java tab menu from dynamic content?
i.e I have a web application which currently generates a certain number of tabs for content based on a users selection.
Can the Kapersky tabs be generated from dynamic content, or does it need to be hard coded for the number of tabs and placement?
A: Unfortunately, Deluxe Tabs doesn't have such a feature.
You may generate a menu from a database or XML using any server-side script, e.g., PHP, ASP, VB, etc.
However, these scripts don't work inside of Javascript .js files, so, you should move parameters of a menu from a .js file into an html-page, e.g.:
<noscript><a href="http://deluxe-tree.com">Javascript Tree Menu by Deluxe-Tree.com</a></noscript>
<script type="text/javascript" src="menudir/dtree.js"></script>
<!-- (c) 2006, http://deluxe-tree.com -->
<script type="text/javascript" language="JavaScript1.2">
// and describe parameters of a menu
var parameter1=value1;
var parameter2=value2;
etc.
var tmenuItems = [
// here you generate items using server-side scripts (php, asp, vb, etc.)
];
</script>
The example of the menu working with PHP/MYSQL you can find here:
http://deluxe-menu.com/rq-loading-bar-MySQL-support.html
This example is not for Deluxe Tabs menu, but you can create your menu in the same way.
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>