Jquery帮助需要Div高度

时间:2013-05-21 07:26:30

标签: javascript jquery

我正在尝试获取我的div的自动高度,通常是div框,它通过css 160px设置,但溢出:隐藏;我如何通过jquery检查自动高度是否超过160px?

我需要这个,因为我有一个盒子,我有一个显示更多或显示更少的按钮所以如果高度不大,然后通常高度160px传递命令...现在它使我的盒子更小

我的代码是:

<script type="text/javascript">
 $("#Show_More_Websites").click(function() {
  var Button_Value = $("#Show_More_Websites").attr("value");
  var Box_Height   = $('.Box_Show_Websites').outerHeight();

  if(Button_Value == "Show More") {
   if(Box_Height <= "160") {
    var el = $('.Box_Show_Websites'),
    curHeight = el.height(),
    autoHeight = el.css('height', 'auto').height();
    el.height(curHeight).animate({height: autoHeight}, 500);
   }
   $("#Show_More_Websites").attr('value', 'Show Less');
  }

  if(Button_Value == "Show Less") {
   var el = $('.Box_Show_Websites'),
   curHeight = el.height(),
   autoHeight = el.css('height', '160px').height();
   el.height(curHeight).animate({height: autoHeight}, 500);


   $("#Show_More_Websites").attr('value', 'Show More');
  }
 });
</script> 

更新

在这里,您可以找到我的代码:http://jsfiddle.net/rAjBH/

1 个答案:

答案 0 :(得分:1)

这是解决方案

演示小提琴 - 注意:以下小提琴仅在html部分发生变化,以使用html <br/>增加自动高度

  

http://jsfiddle.net/rAjBH/1/ - autoHeight少了   http://jsfiddle.net/rAjBH/2/ - 自动高度更多

 $(document).ready(function() {
 $("#Show_More_Websites").click(function() {
  var Button_Value = $("#Show_More_Websites").attr("value");
  var el = $('.Box_Show_Websites')
  var Box_Height   = el.outerHeight();
  var autoHeight =  el.css('height', 'auto').height();
  el.css('height',Box_Height+'px');

  if(Button_Value == "Show More") {
    if(autoHeight > Box_Height) {
      el.height(curHeight).animate({height: autoHeight}, 500);
    }
    $("#Show_More_Websites").attr('value', 'Show Less');
  }

  if(Button_Value == "Show Less") {
    curHeight = el.height();
    autoHeight = el.css('height', '160px').height();
    el.height(curHeight).animate({height: autoHeight}, 500);
    $("#Show_More_Websites").attr('value', 'Show More');
  }
});
});