javascript - 避免元素跳到页面底部的正确方法?

标签 javascript jquery html css footer

因此,目前我在页面加载时运行一些 Javascript,如果页面内容短于页面总高度,则将网站页脚 div 移动到页面底部。

看起来像这样:

if (window.addEventListener) { // Mozilla, Netscape, Firefox
    window.addEventListener('load', windowLoad, false);
} else if (window.attachEvent) { // IE
    window.attachEvent('onload', windowLoad);
}

function windowLoad(event) {
    //Set min-height to viewport height
    if (/*Page elements height*/ < $(window).height()) {
        $(".content").css('min-height', $(window).height() - /*Page elements height*/;
    }
}

问题是,即使是在相当快的连接上,也会出现明显的跳转,即页脚最初位于内容下方,然后跳转到页面底部。有什么解决办法吗?

最佳答案

由于您已经在使用 jQuery,因此可以使用它来绑定(bind)事件。这样您就不需要为不同的浏览器编写不同的代码。

您还可以使用 ready 事件代替 load 事件,后者发生在页面加载过程的早期。 ready 事件是 DOMContentLoaded 事件的跨浏览器版本,其中 jQuery 模拟不支持它的浏览器(即 IE)的事件。

$(document).ready(function(){
  //Set min-height to viewport height
  if (/*Page elements height*/ < $(window).height()) {
    $(".content").css('min-height', $(window).height() - /*Page elements height*/;
  }
});

关于javascript - 避免元素跳到页面底部的正确方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28014467/

相关文章:

javascript - 字大小随 javascript 中的大小限制而增加

javascript - 单击元素时在列表组和 div 之间切换

javascript - 使用javascript更改css中的动画属性

javascript - 如何让我的 NPM 模块正确安装其依赖项?

javascript - onValueChange 不适用于现有组件

javascript - 在函数内部使用变量作为参数

jquery - div 边框上的下拉菜单(带滚动条的 div :auto)

javascript - javascript中如何通过引用传递参数

javascript - 使用 jQuery 在类之间交换时触发淡入淡出

html - 添加 CSS 缓入和缓出过渡以更改图像