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: Could you please tel me : How to use UN-Code on the item. I make some menu based on Farsi language ( Arabic) , but it does not work.
A: You're able to use any characters for Deluxe Menu in the same way asyou use them for standard html page.
The only issue is that submenus can be shown in incorrect positionwhen you're using dir=rtl for your page.
var dmRTL = 0;
Set this parameter to 1 if you're using right-to-left direction of html page <HTML dir=rtl>.
Use also
var smViewType = 2;
for right-to-left languages.
Please, see example:
http://deluxe-menu.com/ways-showing-submenus-sample.html
This examples demonstrates how the menu can change a submenusdirection. Use var smViewType parameter to change a submenusdirection:
var smViewType = 0..3;
Values:
0 - from left to right;
1 - from left to right + upwards;
2 - from right to left;
3 - from right to left + upwards;
In Deluxe Menu when you call data .js file you can try to specify the encoding:
<script src="data.js" charset="utf-8"></script>
Unfortunately, you can't use arabic characters in Deluxe Tuner application.
You should manually correct your code.
Q: Can I choose what menus will be expanded or collapsed in the tree menu javascript when the user comes to the webpage for the first time?
A: You can expand some items by default.
Add '+' sign before items text in that case:
["+Deluxe Tree: XP Style","", "deluxe-tree.files/xpicon1_s.gif", "", "", "XP Title Tip", "", "0", "", "", ],
["|Home","testlink.htm", "deluxe-tree.files/icon1_s.gif", "deluxe-tree.files/icon1_so.gif", "", "Home Page Tip", "", "", "", "data-new.js", ],
"Deluxe Tree: XP Style" item will be expanded by default in that case.
Use var texpanded=1; parameter to expand all menu items by default.
Use function dtreet_ext_expandItem (itemID, expand) API function to expand the specific menu items dynamically:
http://deluxe-tree.com/functions-info.htmlQ: I am using cross browser drop down menu and I would like to know how I can make a link which displays its target file in 2 frames at the same time.
The menu is placed on my main page and 2 other frames are placed at the same main page too. I would like to send parameters to the mentioed 2 frames from 1 menu item to 2 frames at the same time.
Is it possible?
A: You should call javascript function onClick
function openlinks()
{ window.open('testlink_1.htm','frame3');
window.open('testlink_2.htm','frame2');
}
["||How To Setup","javascript:openlinks()"],