Problems & Solutions
Here are some of the more common user problems we have seen on the DHTMLMenu forum:
Since this is a Version 8 site, we assume that most people browsing this site are using Version 8. If you are using Version 8, make sure that it is Version 8.1 or later. Those who have not upgraded to Version 8 should not be using anything earlier than Version 6.6. If you are using Version 7, make sure that it is Version 7.3.
Every HTML or XHTML document should begin with a DOCTYPE (document type declaration). A missing or incorrect DOCTYPE can cause a browser to revert to "quirks" mode, and it will try to parse the page in a backward-compatible fashion. The browser will revert to a proprietary, browser-specific DOM (Document Object Model), and JavaScripts may not function as intended. There is a good article on the DOCTYPE here.
Be sure to upload all the DHTMLMenu resource files (images and JavaScripts) to your Web server, and make sure that the resource files correspond to the version of the program you are using. Prior to Version 8, the version number was indicated in a comment at the beginning of each script. For Version 8, the comment at the beginning of the JavaScript resource files looks like this (we have highlighted the version number):
/*================================================================
ORC_JS, JavaScript Class Framework
version:3.00.70827
Copyright 2007 by SourceTec Software Co.,LTD
For more information, see:www.sothink.com
================================================================*/
We are not sure why the version number says "3" when it is Version 8, but the build number is correct.
There may be a conflict between your stylesheet and your menu. Try "commenting out" your stylesheet or stylesheet link. If that eliminates the problem with your menu, it will take some detective work to determine which stylesheet specification is causing the problem. Table tags in a stylesheet can cause problems because DHTMLMenu uses tables internally.
There may be a conflict between your menu and other JavaScripts on the page. Try "commenting out" other JavaScripts or JavaScript links. Once you determine which JavaScript is causing the problem, you can edit or delete it.
Avoid using frames. We know of no good reason to use frames, and they can be tricky to use correctly. Rarely do experienced developers use frames; unfortunately, those who try to use frames are usually inexperienced, and they run into all sorts of problems. DHTMLMenu does provide for creating cross-frame menus, but the frame names must be used correctly.
If you ignore our advice and attempt to use frames, one common mistake is attempting to access a script object in a different frame. That will usually result in an error message similar to the following:
Permission denied: 'Parent.RemoteFrame.RemoteObject'
That is because of cross-frame security, and you can read about
it here.
Don't use FrontPage. The code generated by FrontPage, especially older versions of the program, can be a nightmare. If you use FrontPage and things on your site don't work as expected, FrontPage may be the culprit. Fortunately, Microsoft has replaced FrontPage with Expression Web which is supposed to be a decent design tool.

