我正在研究适应电子学习框架,我正在尝试垂直居中对齐通知弹出(div)。为此,我通过 js 设置了上边距,这需要 notify-popup 的高度,所以我使用$('.notify-popup').height(true)
. 第一次加载时,它返回高度“x”,但如果我再次调用该函数而不重新加载页面,那么它返回新高度,并在其上添加 16px“x+16”。包括我使用的所有填充和边距,outerHeight(true)
但它也不起作用。jquery 的 height() 方法是否在页面预渲染期间在计算高度时排除或遗漏了某些内容?它在页面初始渲染后调用 resetNotifySize 函数返回正确的高度。
setupEventListener: function() {
this.listenTo(Adapt, 'device:resize', this.resetNotifySize);
}
showNotifyOnPageLoaded: function() {
this.resizeNotify();
}
resizeNotify: function() {
var notifyHeight = this.$('.notify-popup').outerHeight(true);
this.$('.notify-popup').css({
'margin-top': (-(notifyHeight / 2))
});
}
resetNotifySize: function() {
console.log('resizeNotify called through resetNotifySize');
this.resizeNotify();
}