asked on
Could this be a new syntax error based on newer browser versions; and can anyone tell me where in the file and what the cause of the error is? I'm hoping it's a relatively minor fix.
For asp classic, we have used a very robust javascript menu from Ger Versluis since his 2005, version 13.11. I have been unable to find any newer versions of his code since then. Recently, I updated a web application and made a small configuration change to the menu. Basically a text change, nevertheless, now the menu has disappeared from the page when it loads. Chrome console tells me that there is Uncaught SyntaxError: Invalid or unexpected token in the menu131_compact.js:2 file which is the functioning of the menu (and I have not touched). Firefox says Syntax Error: Invalid character.
This is the line I changed in the config file:
var BaseHref = "https://" + serverHR + "/HRTraining/"; // BaseHref lets you specify the root directory for relative links.
This is the code for the menu131_compact.js file (formatted):
/*(c) Ger Versluis 2000 version 13.11 April 13, 2005. You may use this script on non commercial sites. www.burmees.nl/menu*/
if (document.getElementById) {
var maa = navigator.userAgent.toLowerCase()
, mab = navigator.appVersion.toLowerCase()
, mac = maa.indexOf("opera") != -1 && parseInt(maa.substring(maa.indexOf("opera") + 6)) > 6 ? true : false;
if ((maa.indexOf("opera") == -1 || mac)) {
var mad = ((maa.indexOf("mozilla") != -1 && maa.indexOf("compatible") == -1) || mac) ? true : false
, mae = (maa.indexOf("msie") != -1 && !mac) ? true : false;
if (MenuUsesFrames && !parent.frames[0])
MenuUsesFrames = 0;
var maf = ((mab.indexOf("msie 6") != -1 || mab.indexOf("msie 7") != -1) && !mac) ? true : false, mag = (mab.indexOf("mac") != -1 && mab.indexOf("msie 5") != -1) ? true : false, FLoc, ScLoc, DcLoc, mah, mai, maj, mak, mal, mam, man, mao, map = 0, maq = 1, mar = 0, mas = 100, FrstCreat = true, Ldd = false, mat = false, mau = false, mav = false, maw = false, max = false, may = false, maz = true, FrstCntnr = null, mba = null, mbb = null, mbc = null, mbd = null, mbe = null, mbf = null, mbg = "", M_Hide = "hidden", M_Show = "visible", P_X = "px", mbh = StartTop, mbi = StartLeft, Par = MenuUsesFrames ? parent : window, Doc = Par.document, Bod = Doc.body, mbj = mad ? Par : Bod, mbk = mad && maa.indexOf("gecko/") != -1 && maa.indexOf("mac") == -1 && parseInt(maa.substring(maa.indexOf("gecko/") + 6, maa.indexOf("gecko/") + 12)) >= 200303 ? true : false, mbl, mbm = 0;
mbn = setInterval("mbo()", 100)
}
}
function mbo() {
mbl = mae ? MenuUsesFrames ? Par.frames[FirstLineFrame].document.readyState == "complete" && Par.frames[SecLineFrame].document.readyState == "complete" ? 1 : 0 : Par.document.readyState == "complete" ? 1 : 0 : MenuUsesFrames ? Par.frames[FirstLineFrame].document.body && Par.frames[SecLineFrame].document.body ? 1 : 0 : Par.document.body ? 1 : 0;
if (mbl) {
clearInterval(mbn);
Go()
}
}
function mbp() {
return false
}
function mbq() {
mao = mae ? mau ? mbb.clientWidth : FLoc.document.body.clientWidth : FLoc.innerWidth;
mai = mae ? mau ? mbb.clientHeight : FLoc.document.body.clientHeight : FLoc.innerHeight;
mam = mae ? mav ? mbc.clientWidth : ScLoc.document.body.clientWidth : ScLoc.innerWidth;
man = mae ? mav ? mbc.clientHeight : ScLoc.document.body.clientHeight : ScLoc.innerHeight;
if (mbm)
mbr(FrstCntnr);
mar = -1;
mbs();
if (TargetLoc)
mbt();
mbu();
mbv();
mbw(FrstCntnr, StartTop, StartLeft);
if (RememberStatus)
mbx()
}
function mby() {
Ldd = mat = false;
SetMenu = "0";
var M = FrstCntnr ? FrstCntnr.mcd : null;
if (mae) {
while (M != null) {
if (M.CCn) {
mbz(M.CCn);
M.CCn = null
}
M = M.mca
}
}
mbn = setInterval("mcb()", 100)
}
function mcc() {
mbz(FrstCntnr);
FrstCntnr = mbf = FLoc = ScLoc = DcLoc = mah = mba = mbd = Doc = Bod = mbj = null
}
function mbz(P) {
var M = P.mcd, Mi;
while (M != null) {
Mi = M;
if (M.CCn) {
mbz(M.CCn);
M.CCn.mif = null;
M.CCn = null
}
M = M.mca;
Mi.mca = null;
Mi = null
}
P.mcd = null
}
function mcb() {
if (!mae) {
if (ScLoc.document.body) {
clearInterval(mbn);
Go()
}
} else if (ScLoc.document.readyState == "complete") {
if (mbn)
clearInterval(mbn);
Go()
}
}
function Go() {
if (!Ldd) {
mat = false;
Ldd = true;
BeforeStart();
if (ScaleMenu) {
if (document.defaultView && document.defaultView.getComputedStyle)
maq = parseInt(document.defaultView.getComputedStyle(document.body, '').getPropertyValue("font-size")) / 16;
else if (mae && document.body.currentStyle)
maq = parseInt(document.body.currentStyle.fontSize) / 12
}
status = "Building menu";
FLoc = MenuUsesFrames ? parent.frames[FirstLineFrame] : window;
ScLoc = MenuUsesFrames ? parent.frames[SecLineFrame] : window;
DcLoc = MenuUsesFrames ? parent.frames[DocTargetFrame] : window;
if (MenuUsesFrames) {
if (!FLoc)
FLoc = window;
if (!ScLoc)
ScLoc = window;
if (!DcLoc)
DcLoc = window
}
if (FLoc == ScLoc)
maz = false;
if (maz)
FirstLineHorizontal = MenuFramesVertical ? 0 : FirstLineHorizontal ? FirstLineHorizontal : 1;
if (maf || mac) {
mbb = FLoc.document.getElementsByTagName("HTML")[0];
mbc = ScLoc.document.getElementsByTagName("HTML")[0];
mau = FLoc.document.compatMode.indexOf("CSS") == -1 ? false : true;
mav = ScLoc.document.compatMode.indexOf("CSS") == -1 ? false : true
}
mao = mae ? mau ? mbb.clientWidth : FLoc.document.body.clientWidth : FLoc.innerWidth;
mai = mae ? mau ? mbb.clientHeight : FLoc.document.body.clientHeight : FLoc.innerHeight;
mam = mae ? mav ? mbc.clientWidth : ScLoc.document.body.clientWidth : ScLoc.innerWidth;
man = mae ? mav ? mbc.clientHeight : ScLoc.document.body.clientHeight : ScLoc.innerHeight;
maj = FLoc.document.body;
mak = ScLoc.document.body;
mal = ScLoc.document.body;
if (TakeOverBgColor)
maj.style.backgroundColor = maz ? mak.bgColor : mal.bgColor;
if (FrstCreat || FLoc == ScLoc)
FrstCntnr = mce("Menu", NoOffFirstLineMenus, null);
else
mcf("Menu", NoOffFirstLineMenus);
mbr(FrstCntnr);
mbs();
if (TargetLoc)
mbt();
mbu();
mbv();
mbw(FrstCntnr, StartTop, StartLeft);
mat = true;
mah = mae ? ScLoc.document.body : ScLoc;
mah.onunload = mby;
if (mae)
mbj.onunload = mcc;
mbj.onresize = mbq;
AfterBuild();
if (RememberStatus)
mbx();
FrstCreat = false;
if (MenuVerticalCentered == "static" && !maz)
setInterval("mcg()", 50);
if (!mae) {
mao = -1;
mbq()
}
max = true;
mch();
status = "Menu ready for use"
}
}
function mcg() {
var TS = mae ? mav ? mbc.scrollTop : ScLoc.document.body.scrollTop : ScLoc.pageYOffset;
if (TS != mar) {
mar += (TS - mar) * .2;
if (Math.abs(mar - TS) <= 1)
mar = TS;
FrstCntnr.mci = StartTop + mar;
FrstCntnr.style.top = FrstCntnr.mif.style.top = FrstCntnr.mci + P_X
}
}
function mbs() {
StartTop = mbh < 1 && mbh > 0 ? mbh * mai : mbh;
StartLeft = mbi < 1 && mbi > 0 ? mbi * mao : mbi
}
function mbt() {
var mcj = FLoc.document.getElementById(TargetLoc);
while (mcj) {
StartTop += mcj.offsetTop;
StartLeft += mcj.offsetLeft;
mcj = mcj.offsetParent
}
}
function mbu() {
if (MenuCentered.indexOf("left") == -1) {
var Sz = mao - parseInt(FrstCntnr.style.width);
StartLeft += MenuCentered.indexOf("right") != -1 ? Sz : Sz / 2;
if (StartLeft < 0)
StartLeft = 0
}
}
function mbv() {
if (MenuVerticalCentered != "top" && MenuVerticalCentered != "static") {
var Sz = mai - parseInt(FrstCntnr.style.height);
StartTop += MenuVerticalCentered == "bottom" ? Sz : Sz / 2;
if (StartTop < 0)
StartTop = 0
}
}
function mbr(C) {
var mck = C.Lvl == 1 ? mau : mav, M = C.mcd, Mi, i, W = 0, H = 0, Wd, Ht, RI, BRW = C.Lvl == 1 ? BorderWidthMain : BorderWidthSub, mcl = C.Lvl == 1 ? BorderBtwnMain : BorderBtwnSub;
if (C.Lvl <= FirstLineHorizontal) {
while (M != null) {
W += Math.round((M.Arr[5] < 1 ? (M.Arr[5] * (M.Lvl == 1 ? mao : mam)) : (M.Arr[5] * maq)));
Mi = M;
M = M.mca
}
W += ((C.mcm - 1) * mcl + 2 * BRW);
Ht = H = Math.round((Mi.Arr[4] < 1 ? (Mi.Arr[4] * (Mi.Lvl == 1 ? mai : man)) : (Mi.Arr[4] * maq)));
H += (2 * BRW)
} else {
while (M != null) {
H += Math.round((M.Arr[4] < 1 ? (M.Arr[4] * (M.Lvl == 1 ? mai : man)) : (M.Arr[4] * maq)));
Mi = M;
M = M.mca
}
H += ((C.mcm - 1) * mcl + 2 * BRW);
Wd = W = Math.round((Mi.Arr[5] < 1 ? (Mi.Arr[5] * (Mi.Lvl == 1 ? mao : mam)) : (Mi.Arr[5] * maq)));
W += (2 * BRW)
}
C.style.width = C.mif.style.width = W + P_X;
C.style.height = C.mif.style.height = H + P_X;
M = C.mcd;
while (M != null) {
if (M.Arr[5] < 1) {
W = C.Lvl <= FirstLineHorizontal ? (M.Arr[5] * (M.Lvl == 1 ? mao : mam)) : Wd;
mbm = 1
} else
W = (C.Lvl <= FirstLineHorizontal ? M.Arr[5] : Wd) * maq;
if (M.Arr[4] < 1) {
H = C.Lvl <= FirstLineHorizontal ? Ht : (M.Arr[4] * (M.Lvl == 1 ? mai : man));
mbm = 1
} else
H = (C.Lvl <= FirstLineHorizontal ? Ht : M.Arr[4]) * maq;
W = Math.round(W);
H = Math.round(H);
if (M.mcn.indexOf("<") == -1) {
M.tpd = TopPaddng < 0 ? (Math.round(H * .5 - M.Arr[12] * maq)) : TopPaddng;
if (M.tpd < 0 || M.tpd > H)
M.tpd = 0;
M.ltp = LeftPaddng;
if (M.ltp < 0 || M.ltp > W)
M.ltp = 0;
if ((mad && !mac) || mag || mck) {
M.lx = M.ltp;
M.tx = M.tpd
}
}
M.style.width = W - M.lx + P_X;
M.style.height = H - M.tx + P_X;
M.style.paddingLeft = M.ltp + P_X;
M.style.paddingTop = M.tpd + P_X;
if (M.ro) {
RI = (M.Lvl == 1 ? FLoc : ScLoc).document.images[M.rid];
RI.style.width = W + P_X;
RI.style.height = H + P_X
}
if (M.CCn)
mbr(M.CCn);
M = M.mca
}
}
function mbw(Ct, Tp, Lt) {
map++;
var a, Mb = Ct.mcd, MWt = parseInt(Mb.style.width) + Mb.lx, MHt = parseInt(Mb.style.height) + Mb.tx, CWt = parseInt(Ct.style.width), CHt = parseInt(Ct.style.height), CCw, CCh, STp, SLt, Ti, Li, Hi, BRW = map == 1 ? BorderWidthMain : BorderWidthSub, mcl = map == 1 ? BorderBtwnMain : BorderBtwnSub;
if (map == 1 && maz)
!MenuFramesVertical ? Tp = BottomUp ? DistFrmFrameBrdr : mai - CHt - DistFrmFrameBrdr : Lt = RightToLeft ? DistFrmFrameBrdr : mao - CWt - DistFrmFrameBrdr;
if (map == 2 && maz)
!MenuFramesVertical ? Tp = BottomUp ? man - CHt : 0 : Lt = RightToLeft ? mam - CWt : 0;
if (map == 2) {
Tp += VerCorrect;
Lt += HorCorrect
}
Ct.style.top = Ct.mif.style.top = map == 1 ? Tp + P_X : 0;
Ct.mci = Tp;
Ct.style.left = Ct.mif.style.left = map == 1 ? Lt + P_X : 0;
Ct.mco = Lt;
if (map <= FirstLineHorizontal) {
Hi = 1;
Li = CWt - MWt - 2 * BRW;
Ti = 0
} else {
Hi = Li = 0;
Ti = CHt - MHt - 2 * BRW
}
while (Mb != null) {
Mb.style.left = Li + BRW + P_X;
Mb.style.top = Ti + BRW + P_X;
if (Mb.CCn) {
if (RightToLeft)
CCw = parseInt(Mb.CCn.style.width);
if (BottomUp)
CCh = parseInt(Mb.CCn.style.height);
if (Hi) {
STp = BottomUp ? Ti - CCh : Ti + MHt + 2 * BRW;
SLt = RightToLeft ? Li + MWt - CCw : Li
} else {
SLt = RightToLeft ? Li - CCw + ChildOverlap * MWt + BRW : Li + (1 - ChildOverlap) * MWt + BRW;
STp = map == 1 && maz ? BottomUp ? Ti - CCh + MHt : Ti : BottomUp ? Ti - CCh + (1 - ChildVerticalOverlap) * MHt + 2 * BRW : Ti + ChildVerticalOverlap * MHt
}
mbw(Mb.CCn, STp, SLt)
}
a = map <= FirstLineHorizontal ? BottomUp ? 9 : 3 : RightToLeft ? 6 : 0;
if (Mb.ai) {
Mb.ai.style.top = (map <= FirstLineHorizontal ? BottomUp ? 2 : MHt - Arrws[a + 2] - 2 : (MHt - Arrws[a + 2]) / 2) + P_X;
Mb.ai.style.left = (RightToLeft ? 2 : MWt - Arrws[a + 1] - 2) + P_X
}
Mb = Mb.mca;
if (Mb) {
MWt = parseInt(Mb.style.width) + Mb.lx;
MHt = parseInt(Mb.style.height) + Mb.tx;
Hi ? Li -= MWt + mcl : Ti -= MHt + mcl
}
}
map--
}
function mbx() {
if (mat) {
var i, mcp = FrstCntnr, Str = ScLoc.SetMenu ? ScLoc.SetMenu : "0";
while (Str.indexOf("_") != -1 && RememberStatus == 1) {
i = mcp.mcm - parseInt(Str.substring(0, Str.indexOf("_")));
Str = Str.slice(Str.indexOf("_") + 1);
mcp = mcp.mcd;
for (i; i; i--)
mcp = mcp.mca;
mcp.OM();
mcp = mcp.CCn
}
i = mcp.mcm - parseInt(Str);
mcp = mcp.mcd;
for (i; i; i--)
mcp = mcp.mca;
if (mbf != null) {
mcq(mbf, 0);
mbf.mcr = 0
}
if (mcp != null) {
mcq(mcp, 1);
mcp.mcr = 1;
if (RememberStatus == 1)
mcp.OM()
}
mbf = mcp;
mcs(FrstCntnr.mcd);
mct(FrstCntnr)
}
}
function mch() {
if (max && Ldd) {
mcu(FrstCntnr);
max = false;
if (RememberStatus)
mct(FrstCntnr);
if (may)
AfterCloseAll();
may = maw = false
}
}
function mct(mcv) {
var Mbr = mcv.mcd, St;
while (Mbr != null) {
if (Mbr.mda) {
mcw(Mbr);
if (Mbr.CCn && RememberStatus == 1) {
St = Mbr.CCn.style;
St.visibility = M_Show;
mct(Mbr.CCn)
}
break
} else
Mbr = Mbr.mca
}
}
function mcu(CPt) {
var Mb = CPt.mcd;
map++;
CPt.style.visibility = CPt.mif.style.visibility = map == 1 ? M_Show : M_Hide;
CPt.Shw = map == 1 ? 1 : 0;
while (Mb != null) {
if (Mb.mcx)
mcy(Mb);
if (Mb.CCn)
mcu(Mb.CCn);
Mb = Mb.mca
}
map--
}
function mcs(Pt) {
var PSt, Pc;
while (Pt) {
if (Pt.mcx) {
Pc = Pt;
if (Pc != mba)
mcy(Pt);
if (Pt.CCn) {
PSt = Pt.CCn.style;
if (Pc != mba) {
PSt.visibility = Pt.CCn.mif.style.visibility = M_Hide;
Pt.CCn.Shw = 0
}
mcs(Pt.CCn.mcd)
}
break
}
Pt = Pt.mca
}
}
function mcq(mcp, x) {
while (mcp != null) {
mcp.mda = x;
mcp = mcp.mdb.mdc
}
}
function mdd() {
if (UnfoldsOnClick && !maw && this.Arr[3]) {
maw = true;
mde(this)
} else if (this.Arr[1]) {
status = "";
mcy(this);
max = true;
mch();
if (this.Arr[1].indexOf("javascript:") != -1)
eval(this.Arr[1]);
else
DcLoc.location.href = BaseHref + this.Arr[1]
}
}
function mcw(P) {
if (P.rob)
P.style.backgroundImage = "url(\"" + P.mdf + "\")";
if (P.ro) {
var Lc = P.Lvl == 1 ? FLoc : ScLoc;
Lc.document.images[P.rid].src = P.ri2
} else {
if (P.Arr[7])
P.style.backgroundColor = P.Arr[7];
if (P.Arr[9])
P.style.color = P.Arr[9];
if (HooverBold)
P.style.fontWeight = "bold";
if (HooverItalic)
P.style.fontStyle = "italic";
if (HooverUnderLine)
P.style.textDecoration = "underline";
if (HooverTextSize)
P.style.fontSize = parseInt(P.style.fontSize) + HooverTextSize + P_X;
if (HooverVariant)
P.style.fontVariant = "small-caps"
}
P.mcx = 1
}
function mcy(P) {
P.mcx = 0;
if (P.rob)
P.style.backgroundImage = "url(\"" + P.mdg + "\")";
if (P.ro) {
var Lc = P.Lvl == 1 ? FLoc : ScLoc;
Lc.document.images[P.rid].src = P.ri1
} else {
if (P.Arr[6])
P.style.backgroundColor = P.Arr[6];
if (P.Arr[8])
P.style.color = P.Arr[8];
if (HooverBold)
P.style.fontWeight = "normal";
if (HooverItalic)
P.style.fontStyle = "normal";
if (HooverUnderLine)
P.style.textDecoration = "none";
if (HooverTextSize)
P.style.fontSize = parseInt(P.style.fontSize) - HooverTextSize + P_X;
if (HooverVariant)
P.style.fontVariant = "normal"
}
}
function mdh() {
if (Ldd && mat) {
if (UnfoldsOnClick && !maw) {
mba = this;
max = false;
mcs(this.mdb.mcd);
mcw(this);
status = this.Arr[16]
} else
mde(this)
}
}
function mde(Ptr) {
if (mbe)
clearTimeout(mbe);
if (Ptr.Arr[3] && !Ptr.CCn) {
map = Ptr.Lvl;
Ptr.CCn = mce(Ptr.MN + "_", Ptr.Arr[3], Ptr);
mbr(Ptr.CCn);
var Ti, Li, Hi, CCw, CCh, STp, SLt, MWt = parseInt(Ptr.style.width) + Ptr.lx, MHt = parseInt(Ptr.style.height) + Ptr.tx, BRW = map == 1 ? BorderWidthMain : BorderWidthSub;
if (RightToLeft)
CCw = parseInt(Ptr.CCn.style.width);
if (BottomUp)
CCh = parseInt(Ptr.CCn.style.height);
if (map <= FirstLineHorizontal) {
Hi = 1;
Li = parseInt(Ptr.style.left) - BRW;
Ti = 0
} else {
Hi = Li = 0;
Ti = parseInt(Ptr.style.top) - BRW
}
if (Hi) {
STp = BottomUp ? Ti - CCh : Ti + MHt + 2 * BRW;
SLt = RightToLeft ? Li + MWt - CCw : Li
} else {
SLt = RightToLeft ? Li - CCw + ChildOverlap * MWt + BRW : Li + (1 - ChildOverlap) * MWt;
STp = map == 1 && maz ? BottomUp ? Ti - CCh + MHt : Ti : BottomUp ? Ti - CCh + (1 - ChildVerticalOverlap) * MHt + 2 * BRW : Ti + ChildVerticalOverlap * MHt + BRW
}
mbw(Ptr.CCn, STp, SLt);
map = 0
}
mba = Ptr;
max = false;
mcs(Ptr.mdb.mcd);
if (!Ptr.mcx)
mcw(Ptr);
if (Ptr.CCn != null && !Ptr.CCn.Shw)
RememberStatus ? mdi() : mbe = setTimeout("mdi()", UnfoldDelay);
status = Ptr.Arr[16]
}
function mdi() {
var P = mba
, CSt = P.mdb.style
, mdj = P.CCn
, mdk = mdj.style
, mdl = mdj.mif.style
, THt = parseInt(P.style.height)
, TWt = parseInt(P.style.width)
, TLt = maz && P.Lvl == 1 && !FirstLineHorizontal ? 0 : parseInt(CSt.left)
, TTp = maz && P.Lvl == 1 && FirstLineHorizontal ? 0 : parseInt(CSt.top)
, CCW = parseInt(mdk.width)
, CCH = parseInt(mdk.height)
, TS = mae ? mav ? mbc.scrollTop : ScLoc.document.body.scrollTop : ScLoc.pageYOffset
, LS = mae ? mav ? mbc.scrollLeft : ScLoc.document.body.scrollLeft : ScLoc.pageXOffset
, SLt = maz && P.Lvl == 1 ? mdj.mco + TLt + LS : mdj.mco + TLt
, STp = maz && P.Lvl == 1 ? mdj.mci + TTp + TS : mdj.mci + TTp;
if (!may) {
may = true;
BeforeFirstOpen()
}
if (MenuWrap) {
if (RightToLeft) {
if (SLt < LS)
SLt = P.Lvl == 1 ? LS : SLt + (CCW + (1 - 2 * ChildOverlap) * TWt);
if (SLt + CCW > mam + LS)
SLt = mam + LS - CCW
} else {
if (SLt + CCW > mam + LS)
SLt = P.Lvl == 1 ? mam + LS - CCW : SLt - (CCW + (1 - 2 * ChildOverlap) * TWt);
if (SLt < LS)
SLt = LS
}
if (BottomUp) {
if (STp < TS)
STp = P.Lvl == 1 ? TS : STp + (CCH - (1 - 2 * ChildVerticalOverlap) * THt);
if (STp + CCH > man + TS)
STp = man + TS - CCH + 0
} else {
if (STp + CCH > TS + man)
STp = P.Lvl == 1 ? STp = TS + man - CCH : STp - CCH + (1 - 2 * ChildVerticalOverlap) * THt;
if (STp < TS)
STp = TS
}
}
mdk.top = mdl.top = STp + P_X;
mdk.left = mdl.left = SLt + P_X;
if (maf && MenuSlide) {
mdj.filters[0].Apply();
mdj.filters[0].play()
}
mdk.visibility = mdl.visibility = M_Show
}
function mdm() {
if (Ldd && mat) {
status = "";
if (this == mba) {
if (mbe)
clearTimeout(mbe);
if (mbd)
clearTimeout(mbd);
max = true;
mbd = setTimeout("mch(mba)", DissapearDelay)
}
}
}
function mdn(mdo, WMu, Mc) {
var x = eval(WMu + "[10]") != "" ? eval(WMu + "[10]") : BorderColor
, TS = this.style;
this.Lvl = map;
this.mcd = null;
this.mcm = mdo;
this.mdc = Mc;
this.Shw = 0;
this.mco = this.mci = 0;
if (x)
TS.backgroundColor = x;
TS.zIndex = map + mas;
if (mae && !mag)
this.mif.style.zIndex = TS.zIndex - 1;
if (mbk && !mac && MenuOpacity)
TS.MozOpacity = parseInt(MenuOpacity.substring(MenuOpacity.indexOf("=") + 1, MenuOpacity.indexOf(")"))) / 105;
if (maf) {
mbg = "";
if (MenuSlide && map != 1)
mbg = MenuSlide;
if (MenuShadow)
mbg += MenuShadow;
if (MenuOpacity)
mbg += MenuOpacity;
if (mbg != "")
TS.filter = mbg
}
if (mae && !mag && OverFormElements)
this.mif.style.filter = "Alpha(Opacity=0)"
}
function mdp(MbC, mdq, WMu) {
var mdr = map == 1 ? FLoc : ScLoc, t, a, ta2 = this.Arr[2], mds = this.Arr[0];
this.mca = mdq;
this.Lvl = map;
this.mdb = MbC;
this.CCn = this.ai = null;
this.mcx = this.mda = this.mcr = this.ro = this.rob = this.lx = this.tx = this.ltp = this.tpd = 0;
this.OM = mdh;
this.MN = WMu;
this.style.overflow = "hidden";
this.style.cursor = (this.Arr[1] || (map == 1 && UnfoldsOnClick)) ? mae ? "hand" : "pointer" : "default";
if (mds.indexOf("rollover") != -1) {
this.ro = 1;
this.ri1 = mds.substring(mds.indexOf("?") + 1, mds.lastIndexOf("?"));
this.ri2 = mds.substring(mds.lastIndexOf("?") + 1, mds.length);
this.rid = WMu + "i";
mds = "<img src=\"" + this.ri1 + "\" name=\"" + this.rid + "\">"
}
this.mcn = mds;
if (!this.Arr[6])
this.Arr[6] = LowBgColor;
if (this.Arr[6] && !this.ro)
this.style.backgroundColor = this.Arr[6];
if (!this.Arr[7])
this.Arr[7] = HighBgColor;
if (!this.Arr[8])
this.Arr[8] = FontLowColor;
this.style.color = this.Arr[8];
if (!this.Arr[9])
this.Arr[9] = FontHighColor;
if (!this.Arr[11])
this.Arr[11] = FontFamily;
this.style.fontFamily = this.Arr[11];
if (this.Arr[12] == -1)
this.Arr[12] = FontSize;
this.style.fontSize = this.Arr[12] * (mad ? 1 : maq) + "px";
if (this.Arr[13] == -1)
this.Arr[13] = FontBold;
this.style.fontWeight = this.Arr[13] ? "bold" : "normal";
if (this.Arr[14] == -1)
this.Arr[14] = FontItalic;
this.style.fontStyle = this.Arr[14] ? "italic" : "normal";
if (!this.Arr[15])
this.Arr[15] = MenuTextCentered;
this.style.textAlign = this.Arr[15];
if (!this.Arr[16])
this.Arr[16] = this.Arr[1];
if (ta2) {
if (ta2.indexOf("rollover") == -1)
this.style.backgroundImage = "url(\"" + ta2 + "\")";
else {
this.rob = 1;
this.mdg = ta2.substring(ta2.indexOf("?") + 1, ta2.lastIndexOf("?"));
this.mdf = ta2.substring(ta2.lastIndexOf("?") + 1, ta2.length);
this.style.backgroundImage = "url(\"" + this.mdg + "\")";
this.style.backgroundRepeat = "no-repeat";
this.style.backgroundPosition = BgImgLeftOffset + "px"
}
}
if (mds.indexOf("<") == -1) {
t = mdr.document.createTextNode(mds);
this.appendChild(t)
} else
this.innerHTML = mds;
if (this.Arr[3]) {
a = map <= FirstLineHorizontal ? BottomUp ? 9 : 3 : RightToLeft ? 6 : 0;
if (Arrws[a]) {
t = mdr.document.createElement("img");
this.appendChild(t);
t.style.position = "absolute";
t.src = Arrws[a];
t.style.width = Arrws[a + 1] * maq + P_X;
t.style.height = Arrws[a + 2] * maq + P_X;
this.ai = t
}
}
if (mae) {
this.onselectstart = mbp;
this.onmouseover = mdh;
this.onmouseout = mdm;
this.onclick = mdd
} else {
this.addEventListener("mouseover", mdh, false);
this.addEventListener("mouseout", mdm, false);
this.addEventListener("click", mdd, false)
}
}
function mce(MNm, No, mdt) {
map++;
var i, Mbr, PMb = null, mdv = MNm + "1", MWd = eval(mdv + "[5]") * maq, MHt = eval(mdv + "[4]") * maq, mdr = map == 1 ? FLoc : ScLoc, MbC = mdr.document.createElement("div"), MIF = !mae || mag || !OverFormElements ? MbC : mdr.document.createElement("iframe");
mdr.document.body.appendChild(MbC);
if (mae && !mag && OverFormElements) {
MIF.src = "blank.html";
mdr.document.body.appendChild(MIF)
}
MbC.style.position = MIF.style.position = "absolute";
MbC.style.visibility = MIF.style.visibility = M_Hide;
MbC.mif = MIF;
MbC.mdu = mdn;
MbC.mdu(No, MNm + "1", mdt);
for (i = 1; i < No + 1; i++) {
mdv = MNm + eval(i);
Mbr = mdr.document.createElement("div");
Mbr.style.position = "absolute";
Mbr.style.visibility = "inherit";
MbC.appendChild(Mbr);
Mbr.Arr = eval(mdv);
if (!Mbr.Arr[4])
Mbr.Arr[4] = MHt;
if (!Mbr.Arr[5])
Mbr.Arr[5] = MWd;
Mbr.mdu = mdp;
Mbr.mdu(MbC, PMb, mdv);
if (Mbr.Arr[3] && !BuildOnDemand) {
Mbr.CCn = mce(mdv + "_", Mbr.Arr[3], Mbr)
}
PMb = Mbr
}
MbC.mcd = Mbr;
map--;
return (MbC)
}
function mcf(MNm, No) {
var Mbr = FrstCntnr.mcd, i, mdv;
if (!BuildOnDemand) {
map++;
for (i = No; i > 0; i--) {
mdv = MNm + eval(i);
if (Mbr.Arr[3])
Mbr.CCn = mce(mdv + "_", Mbr.Arr[3], Mbr);
Mbr = Mbr.mca
}
map--
} else {
while (Mbr) {
Mbr.CCn = null;
Mbr = Mbr.mca
}
}
}
Original:
ASKER
If possible, I would like to take a look. If you do not want to publish your URL, please post screenshots of the network tab with anything identifying blanked out.
My initial verdict: Do not use a menu from 17 years ago ;)
ASKER
These asp classic applications were coded in 2005 when the menus were new. They have worked all these years so we have not changed them. These applications are still in use at least for the time being and we have not changed code in them that we did not have to.
I have uploaded the config file as well. My puzzle is that I notice on another application that uses this same menu but I haven't touched any config files lately; that one runs without giving any console errors. So I may try to compare the two and see if there is some petty difference that is causing this one to 'fail' a bit.
hrMasterAdminmenu_var.js
Can you go back and use the original file that worked, then lets work on making your update?
In that file, https://filedb.experts-exchange.com/incoming/2022/10_w44/1604754/hrMasterAdminmenu_var.js, serverHR is not defined.
var BaseHref="https://" + serverHR + "/HRTraining/";
console.log(BaseHref)
show what you expect or for examplehttps://undefined/HRTraining/
ASKER
There is a header.asp file which calls these javascript include files plus additional javascript. The variable serverHR is defined there. When I obtain the page source of the whole page, I see that serverHR is properly filled in with the correct domain name in the javascript code.
I will probably take Scott's advice and try to start again with what worked and see if I can get to work afterwards with the slight change. I will write any more comments if I learn anything new.
Hi Mia,
I just use the browser's developer tools. For example, in Chrome:
1. Go to the web page that loads the JavaScript file.
2. Hit F12 to open up the developer tools.
3. Click on the Sources tab.
4. Use the left-hand tree to find the JavaScript file you want to format and click on it once to select it.
5. When you select it, it should display that file in the middle section.
6. At the bottom (below the middle section) is a little button that are two brackets like this: { } - just click that and it'll format the source code.
ASKER
You really need a developer to upgrade your code to 2022.
I may be able to help if you post your site.
There had to be something else besides that. Spacing will not break the code.
ASKER
Can you share the final file?
ASKER