Forums Archive Index > SmartMenus 5 > OverSubImgSrc will not work with menu item property Image
Date: 17 Jun 2005 4:27 pm
Hello
Sorry for my bad english 8)
I have upgraded the best menusystem :wink: from v5.2 to 5.5. Everything works fine except the OverSubImgSrc image for submenues. The picture I have set in SubImgSrc is not changing anymore.
I have found the conflict witch seems to be the menu item property called Image. When removing this tag it works but I belive that it shoud work together!
I hope you can help!
Bold text is used to point my problem!
Quote:
// USE WORDWRAP AND MAXIMIZE THE WINDOW TO SEE THIS FILE
// v5
// === 1 === EXTRAS
s_hideTimeout=500;//1000=1 second
s_subShowTimeout=100;//if <=100 the menus will function like SM4.x
s_subMenuOffsetX=4;//pixels (if no subs, leave as you like)
s_subMenuOffsetY=1;
s_keepHighlighted=true;
s_autoSELECTED=false; //make the item linking to the current page SELECTED
s_autoSELECTEDItemsClickable=false; //look at IMPORTANT NOTES 1 in the Manual
s_autoSELECTEDTree=true; //look at IMPORTANT NOTES 1 in the Manual
s_autoSELECTEDTreeItemsClickable=true; //look at IMPORTANT NOTES 1 in the Manual
s_scrollingInterval=30; //scrolling for tall menus
s_rightToLeft=false;
s_hideSELECTsInIE=false; //look at IMPORTANT HOWTOS 7 in the Manual
// === 2 === Default TARGET for all the links
// for navigation to frame, calling functions or
// different target for any link look at
// IMPORTANT HOWTOS 1 NOTES in the Manual
s_target='self'; //(newWindow/self/top)
// === 3 === STYLESHEETS- you can define different arrays and then assign
// them to any menu you want with the s_add() function
s_CSSTop=[
'#FFFFFF', // BorderColorDOM ('top right bottom left' or 'all')
'#FFFFFF', // BorderColorNS4
0, // BorderWidth
'transparent', // BgColor
0, // Padding
'transparent', // ItemBgColor
'transparent', // ItemOverBgColor
'#000000', // ItemFontColor
'#000000', // ItemOverFontColor
'verdana,arial,helvetica,sans-serif', // ItemFontFamily
'10px', // ItemFontSize (css)
'1', // ItemFontSize Netscape4 (look at KNOWN BUGS 3 in the Manual)
'bold', // ItemFontWeight (bold/normal)
'left', // ItemTextAlign (left/center/right)
0, // ItemPadding
0, // ItemSeparatorSize
'#000000', // ItemSeparatorColor
'', // IEfilter (look at Samples\IE4(5.5)Filters dirs)
false, // UseSubImg
'', // SubImgSrc
'', // OverSubImgSrc
0, // SubImgWidth
0, // SubImgHeight
0, // SubImgTop px (from item top)
'', // SELECTED ItemBgColor
'', // SELECTED ItemFontColor
'', // SELECTED SubImgSrc
false, // UseScrollingForTallMenus
'', // ScrollingImgTopSrc
'', // ScrollingImgBottomSrc
0, // ScrollingImgWidth
0, // ScrollingImgHeight
'', // ItemClass (css)
'', // ItemOverClass (css)
'', // SELECTED ItemClass (css)
0, // ItemBorderWidth
'#FFFFFF', // ItemBorderColor ('top right bottom left' or 'all')
'#FFFFFF', // ItemBorderOverColor ('top right bottom left' or 'all')
'#FFFFFF', // SELECTED ItemBorderColor ('top right bottom left' or 'all')
0, // ItemSeparatorSpacing
'' // ItemSeparatorBgImage
];
s_CSSGreen=[
'#493F2C', // BorderColorDOM ('top right bottom left' or 'all')
'#493F2C', // BorderColorNS4
1, // BorderWidth
'transparent', // BgColor
2, // Padding
'transparent', // ItemBgColor
'transparent', // ItemOverBgColor
'#FFFEF6', // ItemFontColor
'#336600', // ItemOverFontColor
'verdana,arial,helvetica,sans-serif', // ItemFontFamily
'11px', // ItemFontSize (css)
'1', // ItemFontSize Netscape4 (look at KNOWN BUGS 3 in the Manual)
'bold', // ItemFontWeight (bold/normal)
'left', // ItemTextAlign (left/center/right)
3, // ItemPadding
0, // ItemSeparatorSize
'#638B30', // ItemSeparatorColor
'', // IEfilter (look at Samples\IE4(5.5)Filters dirs)
true, // UseSubImg
'themes/Outsite2004/img_menu/arrow.png', // SubImgSrc
'themes/Outsite2004/img_menu/arrowover_green.png', // OverSubImgSrc
8, // SubImgWidth
6, // SubImgHeight
7, // SubImgTop px (from item top)
'', // SELECTED ItemBgColor
'', // SELECTED ItemFontColor
'', // SELECTED SubImgSrc
false, // UseScrollingForTallMenus
'', // ScrollingImgTopSrc
'', // ScrollingImgBottomSrc
0, // ScrollingImgWidth
0, // ScrollingImgHeight
'', // ItemClass (css)
'', // ItemOverClass (css)
'', // SELECTED ItemClass (css)
0, // ItemBorderWidth
'', // ItemBorderColor ('top right bottom left' or 'all')
'', // ItemBorderOverColor ('top right bottom left' or 'all')
'', // SELECTED ItemBorderColor ('top right bottom left' or 'all')
0, // ItemSeparatorSpacing
'' // ItemSeparatorBgImage
];
s_CSSRed=[
'#493F2C', // BorderColorDOM ('top right bottom left' or 'all')
'#493F2C', // BorderColorNS4
1, // BorderWidth
'transparent', // BgColor
2, // Padding
'transparent', // ItemBgColor
'transparent', // ItemOverBgColor
'#FFFEF6', // ItemFontColor
'#964E18', // ItemOverFontColor
'verdana,arial,helvetica,sans-serif', // ItemFontFamily
'11px', // ItemFontSize (css)
'1', // ItemFontSize Netscape4 (look at KNOWN BUGS 3 in the Manual)
'bold', // ItemFontWeight (bold/normal)
'left', // ItemTextAlign (left/center/right)
3, // ItemPadding
0, // ItemSeparatorSize
'#C58039', // ItemSeparatorColor
'', // IEfilter (look at Samples\IE4(5.5)Filters dirs)
true, // UseSubImg
'themes/Outsite2004/img_menu/arrow.png', // SubImgSrc
'themes/Outsite2004/img_menu/arrowover_red.png', // OverSubImgSrc
8, // SubImgWidth
6, // SubImgHeight
7, // SubImgTop px (from item top)
'', // SELECTED ItemBgColor
'', // SELECTED ItemFontColor
'', // SELECTED SubImgSrc
false, // UseScrollingForTallMenus
'', // ScrollingImgTopSrc
'', // ScrollingImgBottomSrc
0, // ScrollingImgWidth
0, // ScrollingImgHeight
'', // ItemClass (css)
'', // ItemOverClass (css)
'', // SELECTED ItemClass (css)
0, // ItemBorderWidth
'', // ItemBorderColor ('top right bottom left' or 'all')
'', // ItemBorderOverColor ('top right bottom left' or 'all')
'', // SELECTED ItemBorderColor ('top right bottom left' or 'all')
0, // ItemSeparatorSpacing
'' // ItemSeparatorBgImage
];
// FUNCTIONS FOR GETTING MENU DIMENTIONS AND POSITION
function s_getDim(name,a){
var o=s_nS4?document.layers["s_m"+s_nr(name)]:s_getO("s_m"+s_nr(name));
if(!o)
return 0;
if(s_nS4)
return a=="h"?o.clip.height:o.clip.width;
if(a=="h")
return s_iE&&!s_mC?o.clientHeight:o.offsetHeight?o.offsetHeight:o.style.pixelHeight;
return s_iE&&!s_mC?o.clientWidth:s_oP7m?o.style.w:o.offsetWidth;
}
function s_getPos(name,a){
var o=s_nS4?document.layers["s_m"+s_nr(name)]:s_getO("s_m"+s_nr(name));
if(!o)
return 0;
if(!s_nS4)
o=o.style;
return a=="l"?parseInt(o.left):parseInt(o.top);
}
// FUNCTIONS FOR GETTING MENU DIMENTIONS AND POSITION
// CODE USED FOR REPOSITIONING PERMANENT MENUS WHILE PAGE LOADING
function s_whilePageLoading(){if(typeof s_ML=="undefined"){setTimeout("s_whilePageLoading()",1000);return};var px=s_oP7m||s_nS4?0:"px",os=null,x,y,i,S;for(i=0;i<s_P.length;i++){S=s_[s_P[i]][0];if(typeof(S.T)=="number"&&typeof(S.L)=="number")continue;os=s_nS4?document.layers["s_m"+s_P[i]]:s_getOS("s_m"+s_P[i]);os.left=eval(S.L)+px;os.top=eval(S.T)+px};if(typeof s_Bl=="undefined")setTimeout("s_whilePageLoading()",1000)};s_whilePageLoading();s_ol=window.onload?window.onload:function(){};window.onload=function(){setTimeout('s_Bl=1',3000);s_ol()}
// CODE USED FOR REPOSITIONING PERMANENT MENUS WHILE PAGE LOADING
// EXAMPLE FUNCTION FOR CENTERING A HORIZONTAL MENU
function s_centerHorizontalMenu(){
var windowWidth,menuWidth=0,scrollBarFix,i;
scrollBarFix=s_nS&&!document.body.clientWidth?15:s_nS4&&innerWidth<document.width?16:0;
windowWidth=s_iE?s_dE.clientWidth:s_nS&&document.body.clientWidth&&!s_sF?s_dE.clientWidth?s_dE.clientWidth:document.body.clientWidth:s_oP7?document.body.clientWidth:innerWidth-scrollBarFix;
for(i=0;i<arguments.length;i++){
menuWidth+=s_getDim(arguments[i],"w");
//menuWidth-=i<arguments.length-1?1:0; // substract border overlapping
}
return parseInt(windowWidth/2-menuWidth/2);
}
// EXAMPLE FUNCTION FOR CENTERING A HORIZONTAL MENU
// === 4 === MENU DEFINITIONS
// *********************************************************** Hjem *************************************************************
s_add(
{N:'H1', // NAME
LV:1, // LEVEL
T:99, // TOP
L:'s_centerHorizontalMenu("H1","H2","H3","H4","H5","H6","H7","H8","H9","H10","H11","H12")', // LEFT
P:true, // menu is PERMANENT (you can only set true if this is LEVEL 1 menu)
S:s_CSSTop // STYLE Array to use for this menu
},
[
{U:'./',T:'',Image:['themes/Outsite2004/img_menu/hjem.png',32,24],OnImage:'themes/Outsite2004/img_menu/hjem_on.png'}
]
);
// ********************************************************* Artikler ***********************************************************
s_add(
{N:'H2',LV:1,T:'s_getPos("H1","t")',L:'s_getPos("H1","l")+s_getDim("H1","w")',P:true,S:s_CSSTop},
[
{Show:'artikler',U:'',T:'',Image:['themes/Outsite2004/img_menu/artikler.png',73,24],OnImage:'themes/Outsite2004/img_menu/artikler_on.png'}
]
);
s_add(
{N:'artikler',LV:2,MinW:150,T:'s_getDim("H2","h")+s_getPos("H2","t")-1',L:'s_getPos("H2","l")',P:false,BGI:'themes/Outsite2004/img_menu/menugreen_bg.png',S:s_CSSGreen},
[
{Show:'artikelindeks',U:'modules.php?op=modload&name=artikelindeks',T:' Artikelindeks',OnBgImage:'themes/Outsite2004/img_menu/selected_green.png',Image:['images/x.png',12,12]},
{U:'modules.php?op=modload&name=Topics&file=index',T:' Emner',OnBgImage:'themes/Outsite2004/img_menu/selected_green.png',Image:['images/x.png',12,12],ImageA:'top'},
{U:'modules.php?op=modload&name=artikelindeks&funktion=kategori',T:' Kategorier',SeparatorSize:1,OnBgImage:'themes/Outsite2004/img_menu/selected_green.png',Image:['images/x.png',12,12],ImageA:'top'},
{U:'modules.php?op=modload&name=TiX_Archives&file=index',T:' Artikelarkiv',OnBgImage:'themes/Outsite2004/img_menu/selected_green.png',Image:['images/x.png',12,12],ImageA:'top'},
{U:'modules.php?op=modload&name=Submit_news&file=index',T:' Skriv artikel',OverClass:s_CSSRed,OverFontColor:'#964E18',BgImage:'themes/Outsite2004/img_menu/menured_subbg.png',OnBgImage:'themes/Outsite2004/img_menu/selected_red.png',Image:['images/x.png',12,12],ImageA:'top'}
]
);
s_add(
{N:'artikelindeks',LV:3,MinW:150,T:'s_getPos("artikler","t")+5',L:'s_getPos("artikler","l")+s_getDim("anmeldelser","w")-4',P:false,BGI:'themes/Outsite2004/img_menu/menugreen_bg.png',S:s_CSSGreen},
[
{U:'modules.php?op=modload&name=artikelindeks&funktion=haandbog',T:' Håndbog i friluftsliv',OnBgImage:'themes/Outsite2004/img_menu/selected_green.png',Image:['images/x.png',12,12],ImageA:'top'},
{U:'modules.php?op=modload&name=artikelindeks&funktion=aktivitet',T:' Aktiviteter',OnBgImage:'themes/Outsite2004/img_menu/selected_green.png',Image:['images/x.png',12,12],ImageA:'top'},
{U:'modules.php?op=modload&name=artikelindeks&funktion=begivenhed',T:' Begivenheder',OnBgImage:'themes/Outsite2004/img_menu/selected_green.png',Image:['images/x.png',12,12],ImageA:'top'}
]
);
s_add(
{N:'aktiviteter',LV:4,MinW:150,T:'s_getPos("artikelindeks","t")+24',L:'s_getPos("artikelindeks","l")+s_getDim("anmeldelser","w")+4',P:false,BGI:'themes/Outsite2004/img_menu/menugreen_bg.png',S:s_CSSGreen},
[
{U:'modules.php?op=modload&name=artikelindeks&funktion=haandbog',T:' Håndbog i friluftsliv',OnBgImage:'themes/Outsite2004/img_menu/selected_green.png',Image:['images/x.png',12,12],ImageA:'top'},
{U:'modules.php?op=modload&name=artikelindeks&funktion=begivenhed',T:' Begivenheder',OnBgImage:'themes/Outsite2004/img_menu/selected_green.png',Image:['images/x.png',12,12],ImageA:'top'}
]
);
Date: 17 Jun 2005 5:59 pm
Wow, I noticed it. :shock:
It only seems to happen in IE- I checked it with many other browsers and only IE5+ on Windows has problems with it. IE4 works fine. Really weird..
I will try to find out what's wrong ASAP. I have suspicions that it may be due to some bug in the IE rendering engine. But who knows- it may also be a bug in the SM code. :?
Thanks very much for letting me know about this issue! I appreciate your help! :)
Date: 19 Jun 2005 1:03 pm
Just as I thought- it's another bug in IE5+/Windows. Fortunately, I found an easy workaround for it. :)
I am currently preparing v5.5.1 and will include this fix in it. It will be ready in about a week (or max. 2 weeks) so you will be able to update then.
If you don't want to wait until then, you can make the fix on your own- just follow these instructions:
1) Open the "s_script_dom.js" in your prefered text editor.
2) Replace the following string (make sure you have chosen the Match Case option on the replace dialog as the case matters here):
Code:
s_i"
with
Code:
s_P"
And you are done! :)
Cheers!
Date: 20 Jun 2005 9:31 am
Hello,
Thats what I call good support :!:
Thank you very much :P
Best regards,
Vandreaben