Recent Questions
Q: I made a html CD presentation based on cascading drop down menu but it works good only onIE and Google Chrome web browsers.
It doesn't work good on Mozilla Firefox browser. It shows menu properly but there is a problem with normal navigation.
The problem is with paths. I put the main js file in "menu" folder and I also have few folders with many html files in them.
For path I use the following "file:/(direct path to specific html file)". It works fine with IE and Google, but Mozilla/Firefox doesn't show the menu.
I tried also to use prefix "file:/" but it also doesn't show the cascading drop down menu on Mozilla/Firefox.
Is there any way to solve this problem?
Thank you for your answer.
A: It is not correct to add "file:/" in the link field.
You should write:
menu/image.gif
or
../menu/image.gif
You can try also to write links in the following way:
file://html/other/1.html
But I don't think that this will help you.
This is a feature of Firefox browser, Opera and Safari. These browsers cannot determine the root folder ofthe website (D:\ in the examples below) on a local machine (as IE and Google Chrome).
IE: D:\html\other\page.html (works)
Opera: file://localhost/html/other/page.html (link doesn't work)
Google Chrome: file:///D:/html/other/page.html (works)
Safari: file:///html/other/page.html (link doesn't work)
Firefox: file:///html/other/page.html (link doesn't work)
You use relative paths (and your folders have several embedded folders), so your links won'twork correctly in Firefox, Opera and Safari. The reason is not in the menu. Standard linkswon't work too.
So I think that the unique solution in your case is to move ALL link files (1.html,2.html, a.html ...) into the same folder with your index.html file.Q: When doing a multi-frame frameset (1 top frame, 2 bottom frames) like this:
<frameset ID="frames" ONLOAD="getBottom()" ROWS="50, *" BORDER="0" FRAMEBORDER="no" FRAMESPACING="0">
   <frame NAME="frmTop" SRC="top.htm" MARGINHEIGHT=0 MARGINWIDTH=0 SCROLLING=NO NORESIZE FRAMEBORDER="0" />
    <frameset ID="bottomFrames" cols="171,*">
     <frame name="frmLeft" src="left.htm" MARGINHEIGHT=0 MARGINWIDTH=0 SCROLLING=NO NORESIZE FRAMEBORDER="0"/>
     <frame name="frmMain" MARGINHEIGHT=0 MARGINWIDTH=0 SCROLLING=NO NORESIZEFRAMEBORDER="0" />
    </frameset>
</frameset>
And using the dm_frameinit like this:
dm_initFrame("[object]", 0, 2, 0);
it works fine in IE -> the menus are displayed exactly under the text and in the bottom right frame.
However, in Firefox, the menu drop down is displayed to the right of the top menu text, and exactly the number of pixels as the width of the left frame.
Perhaps there needs to be some FireFox checking to fix this?
Can you help me with that?
A: The problem is in a structure of your frameset.
Mozilla browsers can't determine absolute coordinates for a frame, sosubmenus drop down with an offset.
You should create the following frameset structure:
 --|------------
   | menu
 --|------------
   |
   | submenus
   |
Now a top row has 2 columns and all browsers can determine awidth of the 1st column in the second row.
Q: What I want to do is use your XP Tabs Template.
It appears fine in the Preview Pane but when I load it on my web page the sub-items are all listed on the same line as the tabs.
A: If you want to create subtabs in your menu you should use Tab Mode
var tabMode=1;
and write your bmenuItems in the following way:
var bmenuItems = [
["-","", "", "", "", "", "", "", "", ],
["XP Tab 1","content1", "", "", "", "", "", "", "", ],
["XP Tab 2","content2", "", "", "", "", "", "", "", ],
["|SItem 226","", "", "", "", "", "", "", "", ],
["XP Tab 3","content3", "", "", "", "", "", "", "", ],
["|SXP Tab 4","content4", "", "", "", "", "", "", "", ],
["-","", "", "", "", "", "", "", "", ],
];
but in that case you can't assign the ID of the DIV to show when youclick on the tab. You can set the links only.
Q: We are wanting to make this collapsible menu Dynamic by reading from a Microsoft SQL Data base.What is the approach in accomplishing this?
A: 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>
<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.)
];
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 Tree menu, but you can create your menu in the same way.