各位高手帮忙看看下面这段Js,IE6总报一个return错误,IE7 IE8都没问题。找不到原因发来大家指教
function showMenu (baseID, divID) {
baseID = $(baseID);
divID = $(divID); if (showMenu.timer) clearTimeout(showMenu.timer);
hideCur();
divID.style.display = 'block';
showMenu.cur = divID; if (! divID.isCreate) {
divID.isCreate = true;
divID.onmouseover = function () {
if (showMenu.timer) clearTimeout(showMenu.timer);
hideCur();
divID.style.display = 'block';
}; function hide () {
showMenu.timer = setTimeout(function () {divID.style.display = 'none';}, 1000);
} divID.onmouseout = hide;
baseID.onmouseout = hide;
}
function hideCur () {
showMenu.cur && (showMenu.cur.style.display = 'none');
}
function showMenu (baseID, divID) {
baseID = $(baseID);
divID = $(divID); if (showMenu.timer) clearTimeout(showMenu.timer);
hideCur();
divID.style.display = 'block';
showMenu.cur = divID; if (! divID.isCreate) {
divID.isCreate = true;
divID.onmouseover = function () {
if (showMenu.timer) clearTimeout(showMenu.timer);
hideCur();
divID.style.display = 'block';
}; function hide () {
showMenu.timer = setTimeout(function () {divID.style.display = 'none';}, 1000);
} divID.onmouseout = hide;
baseID.onmouseout = hide;
}
function hideCur () {
showMenu.cur && (showMenu.cur.style.display = 'none');
}
showMenu.cur && (showMenu.cur.style.display = 'none');
}
这里是不是有问题啊
showMenu.cur && (showMenu.cur.style.display = 'none');
}
改下看看
function hideCur () {
if(showMenu.cur)
showMenu.cur.style.display = 'none';
}
if(showMenu.cur)
showMenu.cur.style.display = 'none';
}
不是这个问题,改了还报错误是:一个return语句再函数之外。
{
var index = str1.indexOf(str2);
if(index==-1) return false;
return true;
} function ResumeError() {
return true;
}
window.onerror = ResumeError; function $(id) {
return document.getElementById(id);
}
// 相对尺寸
function GetOffsetTop (el, p) {
var _t = el.offsetTop;
var _p = el.offsetParent; while (_p) {
if (_p == p) break;
_t += _p.offsetTop;
_p = _p.offsetParent;
} return _t;
};
function GetOffsetLeft (el, p) {
var _l = el.offsetLeft;
var _p = el.offsetParent; while (_p) {
if (_p == p) break;
_l += _p.offsetLeft;
_p = _p.offsetParent;
}
return _l;
};
function showMenu (baseID, divID) {
baseID = $(baseID);
divID = $(divID); //var l = GetOffsetLeft(baseID);
//var t = GetOffsetTop(baseID);
//divID.style.left = l + 'px';
// divID.style.top = t + baseID.offsetHeight + 'px';
if (showMenu.timer) clearTimeout(showMenu.timer);
hideCur();
divID.style.display = 'block';
showMenu.cur = divID; if (! divID.isCreate) {
divID.isCreate = true;
//divID.timer = 0;
divID.onmouseover = function () {
if (showMenu.timer) clearTimeout(showMenu.timer);
hideCur();
divID.style.display = 'block';
}; function hide () {
showMenu.timer = setTimeout(function () {divID.style.display = 'none';}, 1000);
} divID.onmouseout = hide;
baseID.onmouseout = hide;
}
function hideCur () {
showMenu.cur && (showMenu.cur.style.display = 'none');
}
}
整个js文件
if (! divID.isCreate) {
divID.isCreate = true;
divID.onmouseover = function () {
if (showMenu.timer) clearTimeout(showMenu.timer);
hideCur();
divID.style.display = 'block';
};你这里似乎稍了一个大括号。