我有一个facebook标签应用,其高度逐页更改,所以我写了一个'snap'代码 将页脚的位置更改为绝对或静态,但每当我使用IE8访问页面时,会冻结IExplorer。
起初我认为$(document).height()会使页面冻结,但显然不是。所以任何建议都表示赞赏。
var height = $(this).height(),
width = $(this).width();
$( window ).resize(function() {
fsnap();
});
$(document).bind('DOMSubtreeModified', function() {
if($(this).height() != height || $(this).width() != width) {
fsnap();
}
});
function getDocHeight() {
var D = document;
return Math.max(
D.body.scrollHeight, D.documentElement.scrollHeight,
D.body.offsetHeight, D.documentElement.offsetHeight,
D.body.clientHeight, D.documentElement.clientHeight
);
}
function fsnap(){
var dH;
if (navigator.appName != 'Microsoft Internet Explorer') {
dH = $(document).height();
}else{
dH = getDocHeight();
}
if(dH>$(".main").height()) $(".footer").addClass("footersnap");
else $(".footer").removeClass("footersnap");
if(dH > $(".footer").offset().top + $(".footer").height())
$(".footer").removeClass("footersnap");
}