当使用offset()方法加载页面时,我们得到输入框的偏移值。但是,在该输入框上方,有一个按钮,在单击时显示隐藏的div(并且此div可以根据动态内容具有不同的高度)。单击该按钮后,偏移值保持不变,但现在文档的高度已增加。我们想要发生的是,当文档高度发生变化时,偏移值也会动态变化。
这可能吗?如果是这样,怎么样?
答案 0 :(得分:0)
如果我能从您提供的信息中找出您所遇到的问题,我不能100%确定。如果我们可以看到一些代码或者有问题的页面链接,那么提供准确的解决方案会更容易。
听起来你正在使用jQuery的偏移方法来确定页面加载时输入框的位置。这听起来像你正在存储这个价值,这不是你想要的。对offset的调用只会在调用时提供元素的位置。
相反,像这样缓存选择器
var $stored_selector = $('#your .selector');
每当你想要当前位置时调用它上面的方法
// returns current position relative to the document
$stored_selector.offset();
答案 1 :(得分:0)
.offset()
是动态的。您不是将值存储在变量中吗?只需直接访问$(element).offset().top
,您就可以获得正确的值。
jsFiddle:http://jsfiddle.net/we5FP/