0

我有一个弹出 div,它在单击图像时显示,我想在单击的位置显示 div。现在只有当页面处于默认位置时才有效,即不滚动或不缩放。如果滚动或缩放,则弹出窗口的位置正在改变。

正常弹窗

在此处输入图像描述

没关系。

现在,当我向下滚动页面并单击齿轮图像(设置)时。就像这样。

在此处输入图像描述

请查看页面滚动和问题。另一个是当我放大它时。如果放大它的样子:

在此处输入图像描述

我的js是:

$('.settings img').live('click', function (event) {
            $('.set_pop').css('left',event.pageX);     
            $('.set_pop').css('top',event.pageY);
            $('.set_pop').css('display','inline');     
            $(".set_pop").css("position", "fixed");  
            $(".set_pop").show();
        });

我的CSS:和蓝色(标题)它的位置是固定的

.settings{
                float:right;
                margin-right: 3%;
                border: none;
                margin-top: 5px;
                cursor: pointer;

            }
            .set_pop{
                position:absolute;
                margin-right: 50px;
                margin-top:10px;
                width:100px;
                -webkit-box-shadow: #666 0px 2px 3px;
                -moz-box-shadow: #666 0px 2px 3px;
                box-shadow: #666 0px 2px 3px;
                border-radius:5px;
                -moz-border-radius:5px;
                -webkit-border-radius:5px;
                z-index:10;
                background-color: #ffffff;
                color:#000;
            }

html

<div class="settings">
             <img src="images/setting.png" alt="settings" width="30px" height="30px"/>
               <div class="set_pop">
                   <ul class="strip">
                       <li onclick="location.href='register'">Manage Users</li>
                   <li>test</li>
                   <li>test</li>
                   <li>test</li>
                   </ul>
            </div>
         </div>

抱歉发布所有内容,实际上我无法解决问题,我尝试了各种脚本并更改了所有位置。我希望这里有人可以帮助我。

感谢和问候

4

1 回答 1

2

将您的课程更改为:

.set_pop {
background-color: #FFFFFF;
border-radius: 5px 5px 5px 5px;
box-shadow: 0 2px 3px #666666;
color: #000000;
margin-right: 50px;
margin-top: 10px;
position: fixed;
width: 100px;
z-index: 10;
top: 40px;
z-index: 10;

}

我所做的是,我改变了位置:绝对;定位:固定;并添加了“top”和“right”以正确定位它。您可以相应地更改顶部/右侧。

  • 绝对相对于文档显示(或者,如果另一个元素内部是相对于该元素,只要它不是静态的)

  • 相对是相对于文档的,但可以使用左上角和右下角属性定位并随页面滚动

  • 固定显示在浏览器窗口中,因此如果您调整窗口大小,它不会滚动但会移动

详细解释请点击这里

于 2013-04-24T07:35:13.310 回答