【发布时间】:2013-01-17 00:41:09
【问题描述】:
所以很长一段时间以来,我一直在为粘性页脚寻找可靠的解决方案。我发现了一个在每个页面和每个浏览器上都运行良好的;但是需要一些时间才能加载然后生效。有没有办法可以加快速度?也许在页面加载之前加载它?有人提到它可以设置为“onDOMready”而不是onLoad?这有意义吗?
无论如何,这是我的代码:
<script>
function positionFooter() {
var mFoo = $("#myfooter");
if ((($(document.body).height() +
mFoo.height()) < $(window).height() &&
mFoo.css("position") == "fixed") ||
($(document.body).height() < $(window).height() &&
mFoo.css("position") != "fixed"))
{
mFoo.css({ position: "fixed", bottom: "0px" });
}
else
{
mFoo.css({ position: "static" });
}
}
$(document).ready(function () {
positionFooter();
$(window).scroll(positionFooter);
$(window).resize(positionFooter);
$(window).load(positionFooter);
});
</script>
<!--content --->
<div id="myfooter" style="width:100%;"><!--footer content--></div>
如何让它加载更快?
【问题讨论】:
-
你不需要
$(window).load(positionFooter); -
如果您真的希望您的页脚依赖于文档高度(您的代码就是这样做的),那么您必须等待文档加载才能知道它有多高。
-
@Christo 我已经更新了我的答案。它有一个错误。
标签: javascript jquery css footer