Recent Questions Swap Value In Dynamic Treemenu
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: Can you please give me an example of how I would return the full path to the selected item of the web site menu?
A: See the following example:
function getFullPath(mInd){
var result='';
// get pressed item
var params = dm_ext_getMenuParams(mInd);
if (!(params[2]>=0)) return '';
function getPathForItem(mInd,smInd,itInd){
// get for this item
var params = dm_ext_getItemParams(mInd,smInd,itInd);
var result = params[2]+ '('+ params[3]+')';
// find root item id
if (smInd <= 0) return result;
params = dm_ext_getSubmenuParams(mInd,smInd);
for ( var smInd_=0;smInd_ for ( var itInd_=0;itInd_ itParam = dm_ext_getItemParams(mInd,smInd_,itInd_);
if (itParam[0]=arams[2])// id
return result + '->' + getPathForItem(mInd,smInd_,itInd_);
}
}
return result;
};
return getPathForItem(mInd,params[1],params[2]);
}
Q: How can I open the links that I created for the items /sub-items on the same window
for the mouseover menu (not on a new window)?
A: You can set target parameter for all items:
var itemTarget="_self";
or for each item individually:
["","testlink.htm","http://images.myregistry.com/images/myregistry/tabs/thingstodo.gif", "http://images.myregistry.com/images/myregistry/tabs/thingstodo1.gif", "Home Tip","_self", "0", "0", , ],
Q: Actually, we figured out how to adjust the alignment of the text. What we would like to do is set a specific width for each item on the top level of the menu. Right now the width of the menu is based on the length of the item in that hotspot. We would like the width of each of those options to be the same.
A: You should use individual item styles. For example:
var itemStyles = [
["itemWidth=123px"], //style 0
["itemWidth=150px"], //style 1
];
var menuItems = [
["Home","testlink.html", , , , , "0", , , ], //style 0
["Product Info","", "deluxe-menu.files/icon1.gif", "deluxe-menu.files/icon1o.gif", , , "0", , , ], //style 0
["Text","", "deluxe-menu.files/icon1.gif", "deluxe-menu.files/icon1o.gif", , , "1", , , ], //style 1
Try that.