唯品秀前端博客

写jq那经常不可避免的就是要操作DOM,尤其在计算元素宽高访问等等时候,方法实在是多,但每个方法都或多或少有些差异。

1
2
3
4
5
var a = 元素本身的宽度;
width() = a;
innerWidth() = a+padding;
outerWidth() = a+padding+border;
outerWidth(true) = a+padding+border+margin;

在jQuery中

  • width()方法用于获得元素宽度;
  • innerWidth()方法用于获得包括内边界(padding)的元素宽度,
  • outerWidth()方法用于获得包括内边界(padding)和边框(border)的元素宽度,
  • 如果outerWidth()方法的参数为true则外边界(margin)也会被包括进来,即获得包括外边框(margin)、内边界(padding)和边框(border)的元素宽度。
  • 同理,innerHeight方法与outerHeight方法也是用同样的方法计算相应的高度。

所以说:对于同一个元素应该是:width()<=innerWidth()<=outerWidth()<=outerWidth(true);

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
<script type="text/javascript">
$(document).ready(function(){
  $(".btn1").click(function(){
    var obj=$("#p_obj");
    alert(obj.width());
    alert(obj.innerWidth());
    alert(obj.outerWidth());
    alert(obj.outerWidth(true));
  });
});
</script>
<p id="p_obj" style=" width:200px; padding:10px; border:10px solid blue; margin:10px;">This is a paragraph.</p>
<button class="btn1">输出高度</button>

输出的结果分别是 200px, 220px, 240px, 260px.

本站所有文章、图片、资源等如无特殊说明或标注,均为来自互联网或者站长原创,版权归原作者所有;仅作为个人学习、研究以及欣赏!如若本站内容侵犯了原著者的合法权益,可联系我们进行处理,邮箱:343049466@qq.com
赞(0) 打赏
谢谢你请我吃鸡腿*^_^*

支付宝扫一扫打赏

微信扫一扫打赏

标签:

上一篇:

下一篇:

相关推荐

0 条评论关于"jquery中innerWidth(),outerWidth(),outerWidth(true)和width()的区别"

表情

最新评论

    暂无留言哦~~