解决方案 »
- 小问题,没想通,求教各位。得解即结
- 论坛的群众。版主们能给力点吗?如何禁止拉动浏览器大小!
- js怎么生成这段 html啊?
- js文件在IE6和IE7里的调用问题
- ewebeditor 上面的编辑按钮都挤到一块了,必须刷新页面才正常,是怎么回事?
- 又来了,请教,用JAVASCRIPT验证文本框中只能输入时间格式,象19:30
- 要想正常运行var objdbConn = new ActiveXObject("ADODB.Connection");浏览器哪些地方的哪个选项需要做哪些改动, 详见内
- 我想要一棵带图形树的代码,可动态生成的。
- 变量传递问题!!! 请各位帮帮忙.......
- Jquery中的Dialog 窗口上的富文本编辑器(CKEditor 或者freetextbox)产生冲突,文本框无法编辑输入文本问题
- 看不到单元格的数据?
- 设置为首页的判断?
<script>
function offsetTop(obj) {
var totalOffset = 0;
do {
totalOffset += obj.offsetTop;
obj = obj.offsetParent;
} while (obj != null);
return totalOffset;
}function offsetLeft(obj) {
var totalOffset = 0;
do {
totalOffset += obj.offsetLeft;
obj = obj.offsetParent;
} while (obj != null);
return totalOffset;
}
function showLayer() {
var obj = event.srcElement;
msg.style.display = "block";
msg.style.top = offsetTop(obj) + 20;
msg.style.left = offsetLeft(obj) + obj.offsetWidth + 10;
}
function hiddenLayer() {
msg.style.display = "none";
}
</script>
<body>
<div id=msg style="position:absolute;display:none;border:1 solid black;">test</div>
<table width=200 align=center>
<tr align=center>
<td><a href="#" onmouseover="showLayer()" onmouseout="hiddenLayer()">link 1</a></td>
<td><a href="#" onmouseover="showLayer()" onmouseout="hiddenLayer()">link 2</a></td>
<td><a href="#" onmouseover="showLayer()" onmouseout="hiddenLayer()">link 3</a></td>
</tr>
<tr align=center>
<td colspan="2"><a href="#" onmouseover="showLayer()" onmouseout="hiddenLayer()">link 1</a></td>
<td><a href="#" onmouseover="showLayer()" onmouseout="hiddenLayer()">link 1</a></td>
</tr>
</body>
offsetTop(obj)和offsetLeft(obj)是用来取得对象在页面的位置。
能获得链接位置的话,就不需要知道屏幕的分辨率,直接通过链接的坐标定位层就就可以了。
上面的例子中,通过obj = event.srcElement取得触发onmouseover事件的链接,获得链接
的位置后,将层显示在链接右下方