2013-03-17 91 views
0

我有一个问题,我不知道如何解决,我希望这里的一些聪明人会有一个答案。我有一个由jQuery幻灯片效果控制的“联系表单”,只有当用户将鼠标悬停在图标上时才会出现。该效果使表单滑入和滑出浏览器的右侧边框,包含表单的div的整个宽度。默认情况下,表单是隐藏的。到目前为止,我已经修复了这个div,并且所有的工作都很好,但是后来我意识到它随着页面向下滚动,这是我不想要的。然后我做了绝对的div,它保留了它的位置,但是因为我隐藏了具有-250右边距的div,它将页面向右推动那么多,在页面的底部添加一个滚动条处理。问题溢出div

关于如何防止div滑落的任何想法,但同时停止如果从溢出到正确的?我想我可能需要另一个脚本来阻止固定div滑落,但这只是一个想法。任何帮助是极大的赞赏。

+0

,如果你提供你的代码的地区,也将更加有帮助。 – mavili 2013-03-17 13:05:12

+1

如果可能的话把它放在小提琴 – DevelopmentIsMyPassion 2013-03-17 13:13:33

+1

为什么不只是'overflow:hidden'添加到'body'标签? – user20140268 2013-03-17 13:14:34

回答

0

给窗体一个权利:0; 这将始终保持对准右侧边缘,也不会溢出的形式..

<div id="container"> 
    <div id="trigger">Show Form</div> 
    <div id="form"> 
     Form Contents go here 
    </div> 

#container{ 
    position: relative; 
} 
#form{ 
    display:none; 
    position: absolute; 
    right: 0; 
    top:0; 
    width: 250px; 
    height: 100px; /* for demo */ 
    background: #999; /* for demo */ 
} 
#form.visible{ 
    display: block; 
} 

$(document).ready(function() { 
    $("#trigger").click(function() { 
    $("#form").addClass("visible"); 
    }); 
}); 

http://jsfiddle.net/medmu/2/

+0

这是小提琴:http://jsfiddle.net/Zarko/46MEJ/。如果您将鼠标悬停在右侧的透明元素上,您会看到联系表单出现。但是,当您向下滚动到“第2部分”时,联系表单将滑下,这是我不想要的。我希望它被限制在它的父元素中,这是“标题”。谢谢。 – Zeus 2013-03-17 17:57:22

+0

感谢user20140268,我向body添加了overflow-x,并对问题进行了排序!这么简单,但我完全没有想到。现在问题已解决。 – Zeus 2013-03-17 18:11:13