Recent Questions Javascript Treeview Using Database
Q: I created a test page with your product. I have a frame page consisting of a header and content.
The drop down menus are in the header and cross nicely into the content frame when they drop down. This part is working as planned! The first time I open the test page in my browser any link in any drop down menu will work the first time just fine.
Then, if I pick another link in any drop down menu, it appends the address of the first link to the address of the second link and the URL fails.
It is acting like it writes the url for the first link into some variable, then forgets to null it on select, and then appends the url for the second link to the variable. As I click links in different drop down menus it keeps doing this append feature until I have a very long worthless URL path. If I close the browser and start over then the first thing I click on will work properly, but that is all that will work.
I tried this test page on two different PCs, just in case there was a problem on my browsers. MS IE.6.0
A: You can use additional parameters to make menu paths absolute:
var pathPrefix_img = "http://domain.com/images/";
var pathPrefix_link = "http://domain.com/pages/";
These parameters allow to make images and links paths absolute.
For example:
var pathPrefix_img = "http://domain.com/images/";
var pathPrefix_link = "http://domain.com/pages/";
var menuItems = [
["text", "index.html", "icon1.gif", "icon2.gif"],
];
So, link path will be look so:
http://domain.com/pages/index.html
Images paths will be look so:
http://domain.com/images/icon1.gif
http://domain.com/images/icon2.gif
Please, try to use these parameters.
Q: How do your users normally indicate which page a web visitor is on, by using your navigation bar submenu?
A: JavaScript Tree Menu has only two states normal and mouseover.
Try to do the following things:
- delete var pressedItem=1; parameter from your data file
- set correct parameter on each page before you call data file, for
example:
<noscript><a href="http://deluxe-menu.com">Javascript Menu by Deluxe-Menu.com</a></noscript>
<script type="text/javascript"> var dmWorkPath = "menudir/";</script>
<script type="text/javascript" src="menudir/dmenu.js"></script>
<script type="text/javascript"> var pressedItem=3;</script>
...
<script type="text/javascript" src="menudir/data.js"></script>
You can also set a pressed item using Javascript API:
function dm_ext_setPressedItem (menuInd, submenuInd, itemInd, recursion)
Sets a current pressed item.
menuInd - index of a menu on a page, >= 0.
submenuInd - index of a submenu, >= 0.
itemInd - index of an item, >=0.
recursion = true/false - highlight parent items.
But notice, to use dm_ext_setPressedItem() you should know ID of selected item and subitem.
You can't get this ID after you reload your page. That is why you should write your own code on PHP.
Q: I tried to add a fixed width on some of the items that I thought had too much empty space on the right of the text but would not work. Is it possible to have a fixed amount of pixels after the text for all navigation items of the css drop-down menu?
A: You can set padding parameter in the following way:
var itemPadding="3px 15px 3px 3px";
top right bottom left
Q: Irene, thank you. I am working on seeing what you did and trying to get it to work on my computer. I keep getting ActiveX blocking errors when open page with the drop down menu source code on my computer. Is this something I can control from within the html code? Or is this something each user is going to have to change setting(s) in their IE Internet Options?
p.s., I had the code on the page twice cuz was just trying to get something... anything.... to work. I deleted the 2nd set which was further down on the page. I'm trying to get the menus to appear in the grey band just below the blue heading section but prior to the white text description section. And, once I get the menus to work, the navigation bar on left will be deleted. Thank you so much for your patience and help!
A: You can get the following message
"To help protect your security in IE ..."
on your local machine only. You won't have such message when you openyour website via Internet.
If you don't want to see this message you should do the followingthings:
Tools/Internet Options/Advanced Options/
and set
"Allow active content from files to run on My Computer".
Close Internet Explorer and open it once again.
There will be no such message any more.