我正在使用jquery定位(my,at,of)将div显示为按钮的“下拉”。代码如下:
if ( $('#myDiv').is(':hidden') ) {
$('#myDiv').show().position({
my: "left top",
at: "left bottom",
of: $("#myButton"),
"offset" : "0 -2px"
});
} else {
$('#myDiv').hide();
}
当下拉div可见时,按钮可以移动(例如,动态添加/删除其他内容,按下按钮)。问题是,当发生这种情况时,只有按钮移动并且div保持不变,因此div不再相对于按钮正确定位。
以下是一个示例小提琴:http://jsfiddle.net/2BUZU/
是否有漂亮的方式让div始终按下按钮?
我似乎找不到这个问题的答案,但我确信我不是唯一遇到这个问题的人。
谢谢!
答案 0 :(得分:1)
我通过添加容器div
和animate函数实现了这一点。不确定这是否是您所追求的那种解决方案......
希望它有所帮助!
第二个建议
找到position()
元素的myButton
并适当移动myDiv
。
我觉得你可以使用位置和动画功能实现你需要达到的目标。
同样,我希望这会让您更接近您的解决方案。
答案 1 :(得分:0)
虽然我想让下拉div总是自动按下它的按钮,但在我的情况下似乎并不是一个简单的方法。我知道什么会导致按钮在90%的时间内移动,所以当我触发这个时,我会重新定位div。所以现在效果还不错。感谢提示人们。