如果两个元素之间的距离小于 X,则执行 Y
if distance between two elements is less than X do Y
我正在尝试计算网站页脚和侧边栏之间的距离(侧边栏具有可变的边距顶部属性,因为它模仿固定位置元素。
在较小的分辨率下,侧边栏将在页脚顶部滚动。为了解决这个问题,我想在页脚中隐藏侧边栏的 X px,然后在页脚上方滚动 X px 后再次显示它。
我已经尝试了以下代码(在窗口滚动函数中),但这返回了一个负数并且没有按预期工作。
distance = sidebar.offset().top - footer.offset().top;
console.log(distance);
if ( distance > -500) {
sidebar.fadeOut('fast');
} else {
sidebar.fadeIn('fast');
}
试试这个。
$(window).scroll(function() {
//changed order, now you won't get negative number
distance = (footer.offset().top - footer.outerHeight() ) - sidebar.offset().top;
if( distance <= 50 ) // 50 or any distance you want
sidebar.fadeOut(500);
else
sidebar.fadeIn(500);
});
在$(window).scroll()
中添加了该部分,以便每次滚动时都会对其进行检查。
相关文章:
- 计算php或js中的距离
- 使用谷歌地图api计算距离并将其设置在表格中<td>
- 如果用户输入的长度小于最小长度,则显示错误消息
- Jquery setdate设置的日期小于实际选定日期的一
- 如何在ajax中检查密码是否小于8个字符
- 如何在谷歌地图api v3中获得无公里驾驶距离
- 铯JS-两点之间的距离
- 地理位置和计算从当前纬度/液化天然气到另一纬度/液化石油气的距离
- cloudSearch:范围从0到某个值之间的距离
- 计算数据点阵列与平均值的最大距离,并返回相关数据点
- Javascript平等三重等于,但是大于和小于呢?
- 使大数字的价值小于小数字(JS)
- RegEx接受小于-50.0或大于80.0的数字
- gruntjs理解语法-<%=小于百分比符号
- 如何禁用mouseout可见性=“;隐藏的“;对小于768px的介质的影响
- 在选择更改时显示大于/小于的隐藏字段集
- 远距离变换元素的宽度/高度(以像素为单位)
- 如果两个元素之间的距离小于 X,则执行 Y
- jQuery UI如果移动的距离小于一定距离,则可拖动恢复到原始位置
- Duration_in_traffic小于持续时间在谷歌距离矩阵API