如何更好地给div增加高度?

要给div增加高度,是否有更好的方法?
我的方法是:

$('#div1').height($('#div1').height()+300);

但是我感觉这种方法不好?

补充:我的目的其实是为了在此div中填充其他div中的内容,获取到内容div的高度后,增加到目的div中,然后才能设置滚动到底部

阅读 5k
6 个回答

那你可以封装一个方法并缓存对象 避免重复获取

(function($){
    $.fn.appendHeight = function(height){
        var element = this;
        element.height(element.height() + Number(height));
    };
})(jQuery);

// 调用
$('#div1').appendHeight(300);

哪你可以给加百分比。你可以试试看

$('#div1').height($('#div1').height()+300%);

我其实不是很理解你为什么纠结这个。你这样做就可以啊,有什么不好的。

你要说清楚你增加高度有什么用 比如是因为js交互效果 然后需要增加高度 还是你做出来的东西不够设计师给你的图片里面的高度 这些都是可以运用不同方式来解决高度的 比如height padding 还是单纯增加内容撑起某个div的高度

新手上路,请多包涵

看到一个被忽略的回答,其实那个被忽略的回答更高效率,原来的执行了两次dom查询。

$('#div1').height($('#div1').height()+300);

而下面这个先保留一个索引,避免多次查询:

var obj = $('#div1');
obj.height(obj.height()+300);

其实如果可以像这样的伪代码就是最简单的,只是目前浏览器不支持而已,获取与设置不同接口,不过现在浏览器的js接口一直在更新,支持应该是早晚的事情:

ele.height += '300px';
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题