I had thought about that, but I think I got scared off, thinking that
there may come a time when there's an inordinate number of wide
characters in the string. I may decide to bite the bullet and go your
route, though, considering I'm 99% there, anyway.

Thanks,
Jamie

On Thu, 29 May 2003 12:51:33 -0700, in cf-talk you wrote:

>I usually use a character count times an average width.  For instance, I use
>6.5 as my multiplier for 10pt verdana.  Capital 'W' is 11 pixels, I believe,
>lowercase 'l' is 2 pixels, and the rest are somewhere in between.  Really
>simple, no cost, and quite effective:
>
><script>
>multiplier = 6.5;
>buffer = 20; // extra space around the items
>
>window.mymenu = new Menu("title, null, null, "verdana,sans-serif");
><cfset maxlen = 0 />
><cfloop query="items">
>   <cfset maxlen = max(maxlen, len(name)) />
>   mymenu.addMenuItem("#name#", "location='#url#'");
></cfloop>
>mymenu.menuWidth = Math.round(#maxlen# * multiplier) + buffer;
></script>
>
>I haven't used the menus from DWMX, i use an old version from fireworks, but
>that shouldn't matter.
>
>---
>Barney Boisvert, Senior Development Engineer
>AudienceCentral (formerly PIER System, Inc.)
>[EMAIL PROTECTED]
>voice : 360.756.8080 x12
>fax   : 360.647.5351
>
>www.audiencecentral.com
>
>> -----Original Message-----
>> From: Shawn Grover [mailto:[EMAIL PROTECTED]
>> Sent: Thursday, May 29, 2003 12:24 PM
>> To: CF-Talk
>> Subject: RE: Making the MX Popup Menu Javascript Dynamic
>>
>>
>> The COOLjsMenu and COOLjsTree look pretty good. Decent prices too.
>>
>> http://javascript.cooldev.com/scripts/coolmenu/
>>
>>
>> -----Original Message-----
>> From: Jamie Jackson [mailto:[EMAIL PROTECTED]
>> Sent: Thursday, May 29, 2003 1:14 PM
>> To: CF-Talk
>> Subject: Making the MX Popup Menu Javascript Dynamic
>>
>>
>> I hacked up the popup javascript generated by DreamWeaver MX, so I
>> could make the popups data-driven (see below, if interested). I only
>> have one problem, though: mm_menu.js doesn't dynamically size the
>> popup "cells," so if your data is longer than your static width, it's
>> ugly.
>>
>> Apparently DreamWeaver MX (and, I guess, Fireworks MX) itself
>> calculates and sums glyph widths, according to font and size (in other
>> words, it takes into account the width difference of an Arial "i" and
>> "M"). It seems like this could get hairy, if I were to try to
>> calculate these myself.
>>
>> Does anybody know how to modify mm_menu.js to dynamically size these
>> popup "cells," OR know of any comparable, free DHTML popup app that
>> does dynamic sizing? (I used to use HierMenus, but they want $1500+
>> for it now -- what a GOUGE.)
>>
>> Thanks,
>> Jamie
>>
>> <cfoutput>
>> <script language="JavaScript">
>> <!--
>> function mmLoadMenus() {
>>   if (window.mm_menu_1) return;
>> </cfoutput>
>> <cfset jsLoopIdx = 0>
>> <cfoutput query="getHeadlines" group="section_name">
>> <cfset jsLoopIdx = jsLoopIdx + 1>
>>   window.mm_menu_#jsLoopIdx# = new Menu("root",500,18,"Arial,
>> Helvetica,
>> sans-serif",12,"navy","purple","##DDDDDD","##FFCCCC","left","middl
>> e",3,0,100
>> 0,-5,7,true,true,true,0,true,true);
>> mm_menu_#jsLoopIdx#.addMenuItem("#section_name#","location='articl
>> es.cfm?sec
>> tion_id=#section_id#&issue_id=#request.issue_id#'");
>> <cfoutput>
>> mm_menu_#jsLoopIdx#.addMenuItem("#headline#","location='articles.c
>> fm?article
>> _id=#article_id#'");
>> </cfoutput>
>>   mm_menu_#jsLoopIdx#.hideOnMouseOut=true;
>>   mm_menu_#jsLoopIdx#.bgColor='##555555';
>>   mm_menu_#jsLoopIdx#.menuBorder=1;
>>   mm_menu_#jsLoopIdx#.menuLiteBgColor='##FFFFFF';
>>   mm_menu_#jsLoopIdx#.menuBorderBgColor='##777777';
>> </cfoutput>
>>
>> <cfoutput>mm_menu_#jsLoopIdx#.writeMenus();</cfoutput>
>> } // mmLoadMenus()
>> //-->
>> </script>
>> <script language="JavaScript" src="mm_menu.js"></script>
>> <script language="JavaScript1.2">mmLoadMenus();</script>
>>
>> <cfset jsLoopIdx = 0>
>> <cfoutput query="getHeadlines" group="section_name">
>> <cfset jsLoopIdx = jsLoopIdx + 1>
>> <img src="images/sec_btn_top.gif" width=151 height=4 alt=""
>> border="0"><br>
>> <a href="javascript:;"
>> onMouseOver="MM_showMenu(window.mm_menu_#jsLoopIdx#,140,3,null,'bu
>> tton#jsLoo
>> pIdx#')"
>> onMouseOut="MM_startTimeout();"><img #button_image#
>> name="button#jsLoopIdx#" alt="#section_name#" border=0></a><br>
>> <img src="images/sec_btn_bot.gif" width=151 height=3 alt=""
>> border=0><br>
>> <cfoutput>
>> </cfoutput>
>> </cfoutput>
>>
>> 
>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribe&forumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Host with the leader in ColdFusion hosting. 
Voted #1 ColdFusion host by CF Developers. 
Offering shared and dedicated hosting options. 
www.cfxhosting.com/default.cfm?redirect=10481

                                Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4
                                

Reply via email to