以下几个函数,哪个几个在ff下不行?怎么改?

veardn 2009-12-25 04:42:55
<script language="javascript">
var onLeftSide = false;
function openCalendar() {
var objButton = event.srcElement;
var objDateTime = objButton.previousSibling;
if (objDateTime == null) try {
if (onLeftSide) objDateTime = objButton.parentElement.nextSibling.firstChild;
else objDateTime = objButton.parentElement.previousSibling.firstChild;
} catch (e) { objDateTime = objButton; }
var pos = screenOffset(objButton, window);
var width = 192;
var height = 260;
var left = onLeftSide ? pos.left : pos.left + objButton.offsetWidth - width;
var top = pos.top + objButton.offsetHeight;
var url = "demo.html";
var rt = window.showModalDialog(url, objDateTime, "dialogWidth:" + width + "px; dialogHeight:" + height + "px; dialogLeft:" + left + "px; dialogTop:" + top + "px; center:no; help:no; edge:raised; resizable:no; scroll:no; status:no;");
if (rt == null) return;
else objDateTime.value = rt;
//modify();
}
function screenOffset(e, win) {
var b = e.document.body;
var pos = e == b ? { left : 0, top : 0 } : clientPos(e);
pos.top += top.screenTop;
pos.left += top.screenLeft;
for (var w = win || window; w != null && w.parent != null && w.parent != w; w = w.parent) {
var frm = findFrameElement(w);
var frmPos = clientPos(frm);
pos.left += frmPos.left;
pos.top += frmPos.top;
}
return pos;
}
function clientPos(e) {
var b = e.document.body;
if (e == b) return { left : -b.scrollLeft, top : -b.scrollTop };
with (e.getBoundingClientRect()) {
return { left : left - b.clientLeft, top : top - b.clientTop };
}
}

</script>
<input type="text" disabled><input type="button" value="..." onclick="openCalendar()" >
高手帮忙看看,怎么改
...全文
90 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
xmliy 2009-12-25
  • 打赏
  • 举报
回复

var onLeftSide = false;
function openCalendar(e) {
e = e || window.event;
var objButton = e.srcElement ? e.srcElement : e.target;
var objDateTime = objButton.previousSibling;
if (objDateTime == null) try {
if (onLeftSide) objDateTime = objButton.parentNode.nextSibling.firstChild;
else objDateTime = objButton.parentNode.previousSibling.firstChild;
} catch (e) { objDateTime = objButton; }
var pos = screenOffset(objButton, window);
var width = 192;
var height = 260;
var left = onLeftSide ? pos.left : pos.left + objButton.offsetWidth - width;
var top = pos.top + objButton.offsetHeight;
var url = "Test.htm";
var rt = window.showModalDialog(url, objDateTime, "dialogWidth:" + width + "px; dialogHeight:" + height + "px; dialogLeft:" + left + "px; dialogTop:" + top + "px; center:no; help:no; edge:raised; resizable:no; scroll:no; status:no;");
if (rt == null) return;
else objDateTime.value = rt;
//modify();
}
function screenOffset(e, win) {
var b = document.body;
var pos = e == b ? { left: 0, top: 0} : clientPos(e);
pos.top += top.screenTop;
pos.left += top.screenLeft;
for (var w = win || window; w != null && w.parent != null && w.parent != w; w = w.parent) {
var frm = findFrameElement(w);
var frmPos = clientPos(frm);
pos.left += frmPos.left;
pos.top += frmPos.top;
}
return pos;
}
function clientPos(e) {
var b = document.body;
if (e == b) return { left: -b.scrollLeft, top: -b.scrollTop };
with (e.getBoundingClientRect()) {
return { left: left - b.clientLeft, top: top - b.clientTop };
}
}


<input type="text" disabled> <input type="button" value="..." onclick="openCalendar(event)" >

87,923

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧