定位弹出层

本文介绍了一种通过JavaScript实现的弹出层显示方法,该方法可以将弹出层定位到鼠标点击位置的右侧,并根据浏览器窗口大小调整弹出层的位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

把弹出层定位到点击位置右侧

(在10中 document.documentElement.clientHeight  document.documentElement.scrollTop 

   在03中 document.body.clientHeight   document.body.scrollTop

<script type="text/javascript">
        //获取弹出层的显示位置
        function GetPos(obj) {
            var pos = new Object();
            pos.x = event.clientX;
            pos.y = event.clientY;

            return pos;
        }
        //设置层的位置和内容
        function showval(pos, str) {
            //加载数据
            document.getElementById("divInfo").style.cssText = "Z-INDEX:9999;display:block;position:absolute;width:300px;height:103px;border:1px solid #00BFFF;text-align:center;left:'+pos.x+'px;top:'+pos.y+'px;background:#ffffff;";
            var divWidth = parseInt(document.getElementById('divInfo').style.width);
            var divHeight = parseInt(document.getElementById('divInfo').style.height);

            document.getElementById("divInfo").style.left = pos.x + 10;
            if ((pos.y + divHeight) > document.documentElement.clientHeight)
            {
                document.getElementById("divInfo").style.top = parseInt(pos.y) + parseInt(document.documentElement.scrollTop) - divHeight;
            }
                else
            {
                document.getElementById("divInfo").style.top = parseInt(pos.y) + parseInt(document.documentElement.scrollTop);
            }
            document.getElementById("divInfo").innerHTML = str;
        }
        //弹出显示信息层
        function showInfo(obj, yuyueId)
        {
            var pos = GetPos();
            var str = Web_ShiZiTongChouDetails.ShowInfo(yuyueId).value;
            showval(pos, str);
        }
        //隐藏信息层
        function hiddenInfo()
        {
            document.getElementById("divInfo").innerHTML = "";
            document.getElementById("divInfo").style.cssText = "Z-INDEX:9999;display:none;position:absolute;width:300px;height:103px;border:1px solid #00BFFF;text-align:center;left:'+pos.x+'px;top:'+pos.y+'px;background:#ffffff;";
        }
    </script>

 

转载于:https://my.oschina.net/u/235267/blog/109551

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值