Recent Questions Extjs Treepanel State Between Pages
Q: Can you please give me tips on how I can style all menuitems to have font bold when selected and normal font when not selected?
A: Unfortunately, Javascript/DHTML Tree doesn't have such a feature. You can onlyset it's color. You cannot set the font of menu item bold when selected.
You can set menu item's font bold onMouseover, see example here:
http://deluxe-tree.com/data-templates/vista-style-7-template-sample.html
You should addthe following code in your data file:
function changeFont(obj, over)
{
obj.style.fontWeight = over ? 'bold' : 'normal';
obj.style.fontSize = over ? '13px' : '12px'; // You can not use this line
}
var tmenuItems = [
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Security</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Ease of Access</div>","", "", "", "", "", "", "", "", ],
["|<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Internet Options</div>","", "", "", "", "", "", "", "", ],
["|<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Windows Firewall</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Network and Internet</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Hardware</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Programs</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Appearance</div>","", "", "", "", "", "", "", "", ],
["|<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>User Accounts</div>","", "", "", "", "", "", "", "", ],
["|<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Personalization</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Sound and Speech</div>","", "", "", "", "", "", "", "", ],
["<div onMouseOver='changeFont(this, 1)' onMouseOut='changeFont(this, 0)'>Additional Options</div>","", "", "", "", "", "", "", "", ],
];
Please, notice also that you should add this function every time whenyou change your menu in Deluxe Tuner application, as Tuner deletesthis function.
Q: Earlier today I bought your Deluxe Tabbed Menu software. I "nearly" have the menu I want working, but my problem is that the sub menus I have created in my java script tabs disappear very quickly after being clicked. I want these sub-menus to stay when.
The website that I have developed the menu for can be seen at www.domain.ie/index.php I have sub menus created for the About, Courses & Contact Us items, but as mentioned these disappear very quickly.
FYI, I call the data.js menu file from an include file in the webpages. I don't know if this has anything to do with my problem.
A: That is happen because you have links for the top items with subitems:
About Us
Courses
Contact Us
Actually it is not correctly to use links for items with subitems. Youshould use these items to open subitems only.
But if you want to use links for them you should set the correctpressed item for this page, for example for
http://www.domain.ie/about.php
you should set
var bselectedItem=2;
http://www.domain.ie/courses.php
you should set
var bselectedItem=6;
Deluxe Tabs doesn't support API functions which can return theselected tab aslo.
You can set "bselectedItem" and " var bselectedSmItem" parametersbased on your link before you call your data file.
For example, move " var bselectedItem" and " var bselectedSmItem" parametersfrom your data file to your code.
<TD vAlign=top align=left>
/* Select Tab */
<script type="text/javascript" language="JavaScript1.2">
var bselectedItem=<?php echo $seltabs; ?>;
var bselectedSmItem=<?php echo $selsmtabs; ?>;
</script>
<SCRIPT src="data.js" type=text/javascript></SCRIPT>
</TD>
You should define seltabs and selsmtabs using server side script.
You can also set it on every page before you call data.js file, forexample:
<TD vAlign=top align=left>
/* Select Tab */
<script type="text/javascript" language="JavaScript1.2">
var bselectedItem=4;
var bselectedSmItem=3;
</script>
<SCRIPT src="data.js" type=text/javascript></SCRIPT>
</TD>
Q: Hi I recently bought a menu from you - which is great.
However, i have been told that search engines will find it hard to crawl through the menu and find the other parts of my site.
Is it possible for me to create my menu to make it easier for search engines to crawl through?
A: JavaScript Tree Menu is a search engine friendly menu since v1.12.
To create a search engine friendly menu you should add additional html code within your html page:
< div id="dmlinks">
< a href="http://deluxe-menu.com"> menu_item_text1< /a>
< a href="http://deluxe-tree.com"> menu_item_text2< /a>
...etc.
< /div>
To generate such a code use Deluxe Tuner application.
You can find this GUI in the trial package.
Run Tuner, load your menu and click Tools/Generate SE-friendly Code (F3).
Q: Hi, I was wondering if there is a way to leave a main navigation item highlighted when in that section. For example if I clicked on "Contact Us" and when I am on the contact us page, the "Contact us" navigation would still be highlighted. I appreciate any help you might have, thanks!
A: The menu has only two states normal and mouseover. We'll try to add the pressed state in the future.
You can 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.