Recent Questions Modify Tree In Java Framework Javascript
Q: How do I make the submenus sticky i.e. they will not close even when the mouse goes to somewhere else on the page?
A: I've checked your menu in all browsers. I can't see such problem.
You can try to adjust these parameters:
var transDuration=200; // Delay of a transitional effect (in ms) on submenu's showing.
var transDuration2=100; // Delay of a transitional effect (in ms) on submenu's hiding.
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: As I have stated before, your Deluxe-Menu is very very good.
But there is allways room for improvement.
Is there any chance to see support for the following in Deluxe-Menu:
When I move the mousepointer above a menuitem and right-click I would like to see in the javascript contextual menu (the context menu provided by the browser):
Open Link in new window
Open Link in new tab
If the above is not possible or not something you want to enable.... then, there should be possible to make a workaround to make this work:
I see there is support for custom javascript contextual menus.....
.... is there any possibility to make a custom context menu that show above a menuitem and that show when right clicking on the menuitem.
Should hopefully be possible to create in such way that I create one context menu in javascript (the deluxe menu way... ) , but when clicking on "Open link in new window" from that custom menu, then the JS code should call a javascript function of mine (or yours), with a parameter related to the menuitem that was right-clicked...
And this javascript function should be able to resolve the actual URL (based on the input parameter rel. to the menuitem) and then open a new window using window.open()
If not possible to implement using the native browser context menu, then I belive it should be possible to do it using my workaround how to.....
Just a thought....
Any suggestions on how I can make the workaround work, or if maybe you could support the workaround in some way in future releases of Deluxe-Menu?
A: Yes, there is a workaround.
You can write your items in the following way:
["|<a href='http://www.domain.com' class="link">test test test</a>",""],
You should assign style for this link.
A.link {
...
}
A.link:hover {
...
}
Q: Could you please just help me - I have been using quirks mode to create our customer sites and would now like to start using a proper doctype like:
But when I change it, all the down menus dhtml break on the sites.
A: Try to specify all units in "px":
var itemPadding="3px";
var itemStyles = [
["fontStyle=normal 11px Lucida SansUnicode","fontColor=#FFFFFF,#FFFFFF","itemBackColor=#DE2829,#C62829","itemBorderWidth=0",
"itemBorderColor=#FFFFFF,#C21212","itemBorderStyle=solid,solid",
"itemBackImage=blank.gif,blank.gif","itemWidth=160px"], ["itemWidth=129px"],
];
var menuStyles = [
["itemSpacing=0", "itemPadding=8px"]
];