If you ever needed a quick, slick and yet just slighty dirty dropdown menu for your matrix site look no further:
http://demo.squiz.co.uk/v3_woodland/spacemen
Share & Enjoy
SP .
Nice stuff, thanks. 
Hey mate,
Tried out your menu, looks great however it doesn't populate the URL's from MySource. So its a great menu that links to nowhere 
Also I noticed that if a page title in MySource has a "(" in it it stuffs up the menu.
2nd one is a minor issue but the first one is a pain for people like myself who don't really know java and therefore can't resolve it.
Cheers
Crooksey
This should be a fixed version:
<script language=JavaScript src="mysource_files/JSCookMenu.js"></SCRIPT> <!--matrix to build menu array--> <script language=JavaScript> <!-- var myMenu = [ <MySource_AREA id_name="array_menu1" design_area="menu_normal"> <MySource_SET name="prefix_with_divider" value="false"/> <MySource_SET name="suffix_with_divider" value="true"/> <MySource_SET name="level" value="top"/> <MySource_SET name="show_subs" value="always"/> <MySource_ASSET> ['','<MySource_PRINT var="asset_name"/>','#',null,'<MySource_PRINT var="asset_name"/>' <MySource_SUB design_area="menu_normal"> <MySource_SET name="prefix_with_divider" value="false"/> <MySource_SET name="suffix_with_divider" value="true"/> <MySource_SET name="show_subs" value="always"/> <MySource_ASSET> ,[' ','<MySource_PRINT var="asset_name"/>','<mysource_print var="asset_url" />',null,'<MySource_PRINT var="asset_name"/>' <MySource_SUB design_area="menu_normal"> <MySource_SET name="prefix_with_divider" value="false"/> <MySource_SET name="suffix_with_divider" value="true"/> <MySource_ASSET> ,[' ','<MySource_PRINT var="asset_name"/>','<mysource_print var="asset_url" />',null,'<MySource_PRINT var="asset_name"/>' </MySource_ASSET> <MySource_DIVIDER>],</MySource_DIVIDER> </MySource_SUB> </MySource_ASSET> <MySource_DIVIDER>],</MySource_DIVIDER> </MySource_SUB> </MySource_ASSET> <MySource_DIVIDER>],</MySource_DIVIDER> </MySource_AREA> ]; --> </SCRIPT> <DIV id=myMenuID1></DIV> <script language=JavaScript> <!-- cmDraw ('myMenuID1', myMenu, 'hbr', cmThemeOffice, 'ThemeOffice'); --> </SCRIPT> <!-- END spacemenu v1.0 --> </DIV></pre>
Thanks very much for that Avi,
Forgive me for asking dumb questions but the two following warnings appeared.
Is there something I need to change on these assets?
MySource Warning
Attribute "asset_url" not found for Asset "array_menu1__sub_menu" (# 2358)
MySource Warning
Attribute "asset_url" not found for Asset "array_menu1__sub_menu__sub_menu" (# 2359)
Sorry, I'm a moron. 
Please change the <mysource_print var="asset_url" /> tags to <mysource_print var="asset_link" />
Thanks Avi your a champion!!!!!!!!!
Nice one Avi - I forgot to replace the "#" with the "<mysource_print var="asset_link" />" bit coz when I was testing the array I didn't want the link to keep appearing! :o
I'll put the changes on the webpage and I'm adding a bit which highlights the link you are on (on the top level at any rate)
As for the "(" breaking the menu I don't really have any answers at this point… I would have expected the system to automtically escape them out with a "(" <-thats mean to be an ampersand hash 040 ; but the board keeps turning it back into a bracket !
I will however investigate
SP.
nice one Spacecowboy, cool to see some user dev stuff out in the wild.
Cheers
Dale
From v3.4.2 and higher, ( and ) characters are properly encoded within the Asset names (and are not allowed in URLs). The upgrade won't replace existing URLs though, you'll have to fix those manually.
I must be going crazy or not reading something right!
I can't find any reference to the "more.png" file or an "IMG" at line 26 in the JSCookMenu.js.
In fact line 26 looks blank to me! What am I doing wrong here. I can't even find any reference to an "IMG" or a "more.png" in the whole file!
Has this changed?
You need to upload your image file to Matrix, find out the assetid, and then in JSCoolMenu.js find the line with <IMG src='./?a=248'> and replace it with <IMG src='./?a=ASSETID_HERE'>. By hardcode, he meant you need to hardcode the assetid of your image into the JS.
Hi Nathan
I understand the uploading process and what to do, I just can't find any any "<IMG src= " in the JSCoolMenu.js file at all!
I thought the fine my have since been changed!??? When I load JSCoolMenu.js into Dreamweaver, line 26 is actually blank!
Also, I have uploaded all the files and edited my parsefile etc and the menu seems to be working fine as it is (with no editing changes)!
What would you normally expect to happen if if the editing changes had not been made?
I've never used this before, but from what I can tell you're supposed to edit JSCookTheme.js…not JSCoolMenu.js.
Thanks Nathan, you are correct. Spacecowboy as an error in the instructions!
It is the JSCookTheme.js that needs to be edited, NOT the JSCoolMenu.js
Much appreciated all, and many thanks to space cowboy for sharing this fantastic menu with the rest of us!
This drop down menu is fantastic, but is there anyway to exclude pages from this menu, or is every page you add to a site automatically listed?
I would like to be able to have the drop down menu at the top as well as a side menu… is this possible?
If you want to hide an asset from the menu, go to its Linking screen and change the TYPE_1 link to a TYPE_2 link.
And I don't know the answer to your second question. 
It depends on how you want to build the side menu. You might want to do some sort of nested asset list (ie, it's going to be the exact same menu across the site, or if the menu was going to list only the children of the currently viewed asset you could set up an asset list with dynamic root nodes). Alternatively, you might set up another menu_normal design area there.
[quote]If you want to hide an asset from the menu, go to its Linking screen and change the TYPE_1 link to a TYPE_2 link.
And I don't know the answer to your second question. :)[/quote]
If I make the page a type_2 asset, it will not be accesible to public users! This is not what I want. I just don't want the item listed in the main menu system.
Is there a way to still have the page accessible (eg via a url for example), but not listed in the main menu system?
TYPE_2 linking just means "dont show in the menu". It doesnt have anything to do with permissions.
So your public users can still see it, they just cant navigate to it through the web site menu system.