我有这两段代码
function fixFooter() {
var wrapper = $('#disqus_wrapper').height();
if ( wrapper > 200 ) {
$(window).trigger('resize');
}
};
var element = $('#disqus_wrapper');
new ResizeSensor(element, function() {
fixFooter();
});
预期的效果是每次div#disqus_wrapper改变高度时窗口都会调整大小。 (修复评论和页脚重叠)
代码可以运行,但只在页面加载后运行一次。我需要它每次div高度变化时调整大小。我试着通过警报切换触发器('resize')功能,一切都很完美。知道为什么触发器('resize')只能工作一次,我该如何解决?
更新;
html就是这个,因为我正在加载Disqus评论系统
<div id="disqus_wrapper"><div id="disqus_thread"></div></div>
为了检测div高度变化我正在使用这个库 https://github.com/marcj/css-element-queries(ResizeSensor.js)
答案 0 :(得分:0)
您需要在窗口调整大小事件中调用函数fixFooter()
。
$( window ).resize(function() {
fixFooter();
});