我创建了一个响应式网页,我试图在jQuery中使用.outerHeight()
方法找到元素的高度,如下所示:
(仅举例;不是我如何使用它。)
jQuery(document).ready(function($){
// Identify height of div#main
var element_h = $('.home #main').outerHeight(true);
// Apply same height to div#primary
$('.home #primary').attr('style', 'height:'+element_h+'px;');
});
问题是,当调整网页大小(当然,重新加载)时,计算出的高度小于元素的实际高度。
考虑到网页是响应式的,当调整浏览器大小时,元素的高度会增加。 jQuery的 .outerHeight()
和 .height()
方法似乎正确计算高度,直到滚动条出现 - 即使整个元素仍在图。
知道为什么会这样吗?我可能做错了什么?
答案 0 :(得分:0)
最好的办法是检测浏览器滚动条的大小,并将其作为检测的全局变量。请参阅this answer了解如何执行此操作。
然后,您可以将结果分配给类似
的内容$(window).data('scrollbarSize');
答案 1 :(得分:0)