我的页面上有一个模态窗口设置工作正常,但需要重新定位窗口调整大小才能保持居中。不幸的是,我只是得到错误:
未捕获的TypeError:对象#没有方法'outerHeight'
我错误地使用“this”吗?
$(window).resize(function() {
//If mask is open, resize modal elements
if ($('#modalMask').is(':visible')) {
//Resize and position modal windows
//Get window dimensions
var mWinHeight = $(window).height();
var mWinWidth = $(window).width();
//Make sure all open modal windows are centred
$('.modalWindow:visible').each(function (i) {
var $this = $(this);
$this.css('top', mWinHeight/2-(this.outerHeight()/2));
$this.css('left', mWinWidth/2-(this.outerWidth()/2));
});
}
});
答案 0 :(得分:2)
忘了一些'$':
$this.css('top', mWinHeight/2-($this.outerHeight()/2));
$this.css('left', mWinWidth/2-($this.outerWidth()/2));
答案 1 :(得分:0)
我不知道outerHeight
是否是DOMElement的属性,但您必须删除括号才能使用javascript属性:
this.outerHeight
或从this
创建一个jquery对象以使用.outerHeight()jquery方法:
$(this).outerHeight()
// or use $this.outerHeight()