Recent Questions
Q: I would like to add the javascript API to a link contained in my website that will have the corresponding item in the deluxe-tree menu act as if it was "clicked".
Presumably I need to add the script (for example) <A HREF="http://deluxe-menu.com/features-info.html" TARGET="_self" "..javascriptHere ..">. Can you give me an example please of what code goes into there.
I presume I use dm_ext_setPressedItem (menuInd, submenuInd, itemInd, recursion) but where do I get the ????Ind data from and make the javascript call in the above link.
A copy of a working example together with where to get the data , perhaps on your own web pages, would help.
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: I will build menu for several books’ Contents, each book is more than 100 lines and has links. I think if all the books’ contents in 1 *.JS file then it is TOO LOONG!!.
Can I break it down to 1 book for 1*.JS ? How?
A: You cannot divide your menuItems parameter.
You can only use one .js file for your menu parameters and the other.js file for your menuItems = [...];
But you can do it in two ways.
1) You can try to use several menus on the one page, for example:
param.js // file with menu parameters (all parameters before menuItems = [...];)
menu1.js // menuItems for "AC-DC", "ANLOG"
menu2.js // menuItems for "DIGITAL", "WinXP"
menu3.js // menuItems for "MS-Word", "MS-Excel"
In these menu files you should write
menuItems = [
...
];
dm_init();
Then you should install your menu in the following way
<script type="text/javascript" src="param.js"></script>
<table>
...
<script type="text/javascript" src="menu1.js"></script>
...
<script type="text/javascript" src="menu2.js"></script>
...
<script type="text/javascript" src="menu3.js"></script>
But it will be easier to use vertical menu in such case
var isHorizontal=0;
var smColumns=1;
2) You can also try to add some code, see the attached example.
In the first file (@MY books (Multiple Col.js) I write menuItems for the first item "AC-DC".
Notice that you should delete comma at the end of the last item
var menuItems = [
["AC-DC","", , , , , , , , ],
["|@Book1","testlink.htm", , , , , , , , ],
...
["|@Book3","", , , , , , , , ],
["||CH02","", , , , , , , , ],
["||CH01","", , , , , , , , ] // delete comma at the end of the last item
];
In the second file (@MY books (1.js) you should write
menuItems = menuItems.concat(
[
["ANLOG","", , , , , , , , ],
["|@Book1","", , , , , , , , ],
["|@Book2","", , , , , , , , ],
["|@Book3","", , , , , , , , ] // delete comma at the end of the last item
]
);
In the third file (@MY books (2.js) you should write
menuItems = menuItems.concat(
[
["DIGITAL","", , , , , , , , ],
["|Item 1332","", , , , , , , , ],
["WinXP","", , , , , , , , ],
["|Item 1333","", , , , , , , , ],
["MS-Word","", , , , , , , , ],
["|Item 1334","", , , , , , , , ],
["MS-Excel","", , , , , , , , ],
["|Item 1335","", , , , , , , , ] // delete comma at the end of the last item
]
);
dm_init();
Notice that you should write dm_init(); function in the last file.
In the .html file you should write
...
<tr>
<script type="text/javascript" src="@MY books (Multiple Col.js"></script>
<script type="text/javascript" src="@MY books (1.js"></script>
<script type="text/javascript" src="@MY books (2.js"></script>
</tr>
I hope you understand me.
Q: The pop-up windows are loading as the page loads, as well as when you click the appropriate object.
How can we prevent the pre-loading of html popups so that they only load onclick?
A: In that case you shouldn't set openAfter and closeAfter parameters.
So, you'll have:
deluxePopupWindow.attachToEvent(win,',,,,,')
or
deluxePopupWindow.attachToEvent(win,'openAfter=,closeAfter=,,,,')
See the following example:
http://deluxepopupwindow.com/html-popup-dialog-vista-graphite.htmlQ: I've noticed something strange in the Deluxe Tree and I am wondering if this is normal.
Here's an example I have in my "data.js" file to populate the javascript ajax tree:
var tmenuItems = [
["Mes alertes/My alerts","", "", "", "", "", "", "0", "", "", ],
["|Francais","", "", "", "", "", "", "", "", "js/AjaxTreeFr.js", ],
["|English","", "", "", "", "", "", "", "", "js/AjaxTreeEn.js", ],
];
Here's basically how it goes:
- Basically the "0" represents a pre-built style that I have set for the root of my tree.
- Under this are the first child of the root called "Francais" and "English" which I link with a JS file to populate (Because the users will customize the alerts they want to see).
This works perfectly fine. But it is a workaround. Let me explain what I wanted in the first place:
var tmenuItems = [
["Mes alertes ","", "", "", "", "", "", "0", "", " js/AjaxTreeFr.js ", ],
["My alerts","", "", "", "", "", "", "", "", "js/AjaxTreeEn.js", ],
];
Basically I wanted to have 1 javascript ajax tree with 2 root items "Mes alertes" and "My alerts" but it seems impossible to attach a js file to the root of the tree view. (It doesn't get populated).
Any ideas?
A: See AJAX feature won't work for first-level in XP style now.
It works if you use:
var tXPStyle=0;