我有这个脚本:
function fixHeight () {
$(".sidebar-mainbox-container").height($(window).height());
})
fixHeight();
$(window).on("resize", function() {
fixHeight();
})
我正在寻找一种使用自调用函数简化它的方法,然后在resize事件中调用它。
我试过这个:
var fixHeight = (function () {
$(".sidebar-mainbox-container").height($(window).height());
})();
$(window).on("resize", function() {
fixHeight();
})
但是通过这种方式,自调用函数的值被分配给fixHeight
,这不起作用。
如果我删除了自我调用的部分......
var fixHeight = (function () {
$(".sidebar-mainbox-container").height($(window).height());
});
$(window).on("resize", function() {
fixHeight();
})
然后该功能仅在我调整大小时才起作用,这不好。
如何简化此代码以避免3个元素执行这么简单的任务?
答案 0 :(得分:4)
有什么问题
$(window).on("resize", function() {
$(".sidebar-mainbox-container").height( $(this).height() );
});
为了避免额外的函数调用,只需在注册后立即触发事件。
$(window).on("resize", /* ... */).trigger("resize");