原生JS获取元素集合的子元素宽度实例


Posted in Javascript onDecember 14, 2016

有些时候,在一个网页的ul li中,存在左右两个部分的内容,但是右边元素内容又是不固定,左边元素相对应的不能用固定宽度,所有需要我们动态的获取右边元素宽度,来赋值给左边元素的marginRight值。

HTML结构:

<ul class="itemCon">
  <li class="item">
    <div class="leftMess">
      <div class="leftCon">
        <span>头像</span>
        <p>名字名字名字名字名字名字名字名字名字名字名字名字名字名字名字名字</p>
      </div>
    </div>
    <div class="rightMess">
      <span>工具1</span>
      <span>工具2</span>
      <span>工具3</span>
    </div>
  </li>
  <li class="item">
    <div class="leftMess">
      <div class="leftCon">
        <span>头像</span>
        <p>名字名字名字名字名字名字名字名字名字名字名字名字名字名字名字名字</p>
      </div>
    </div>
    <div class="rightMess">
      <span>工具2</span>
      <span>工具3</span>
    </div>
  </li>
  <li class="item" id="test">
    <div class="leftMess">
      <div class="leftCon">
        <span>头像</span>
        <p>名字名字名字名字名字名字名字名字名字名字名字名字名字名字名字名字</p>
      </div>
    </div>
    <div class="rightMess">
      <span>工具3</span>
    </div>
  </li>
</ul>

配上CSS:

html,body{padding:0;margin:0}
ul,li{list-style:none;padding:0;margin:0}
p{margin:0;padding:0}
.itemCon{width:450px;height:auto; margin:100px auto; background:#ccc; overflow:hidden}
.item{width:100%; float:left;height:60px;border-bottom:solid 1px #f00; position:relative}
.leftMess{ height:60px;}
.leftCon{ float:left; height:60px; overflow:hidden;width:100%}
.leftMess span{ display:inline-block;width:50px;height:50px; border-radius:50%; background:#f00; text-align:center; line-height:50px; margin:5px; float:left}
.leftMess p{ margin-left:60px}
.rightMess{width:auto;height:60px; position:absolute;right:0;top:0}
.rightMess span{width:50px; height:50px; line-height:50px; text-align:center; margin:5px; float:left; background:#f00}

最后JS代码:

<script type="text/javascript">
  var divs = document.getElementsByClassName('item');
  for (var i = 0; i < divs.length; i++) {
    var lastW = divs[i].children[1].offsetWidth;
    divs[i].children[0].style.marginRight=lastW+"px"
  }
</script>

最终效果图:

原生JS获取元素集合的子元素宽度实例

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
jscript之List Excel Color Values
Jun 13 Javascript
鼠标移到导航当前位置的LI变色处于选中状态
Aug 23 Javascript
JavaScript获取页面中第一个锚定文本的方法
Apr 03 Javascript
js实现图片淡入淡出切换简易效果
Aug 22 Javascript
canvas 绘制圆形时钟
Feb 22 Javascript
微信小程序开发之麦克风动画 帧动画 放大 淡出
Apr 18 Javascript
将Sublime Text 3 添加到右键中的简单方法
Dec 12 Javascript
Angular使用Restful的增删改
Dec 28 Javascript
React生命周期原理与用法踩坑笔记
Apr 28 Javascript
Node在Controller层进行数据校验的过程详解
Aug 28 Javascript
在vue中动态修改css其中一个属性值操作
Dec 07 Vue.js
Ajax异步刷新功能及简单案例
Nov 20 Javascript
微信小程序 require机制详解及实例代码
Dec 14 #Javascript
js实现获取鼠标当前的位置
Dec 14 #Javascript
详解vue.js组件化开发实践
Dec 14 #Javascript
JavaScript Ajax实现异步通信
Dec 14 #Javascript
微信小程序 配置文件详细介绍
Dec 14 #Javascript
微信小程序 闭包写法详细介绍
Dec 14 #Javascript
微信小程序 wx.uploadFile无法上传解决办法
Dec 14 #Javascript
You might like
PHP 中的类
2006/10/09 PHP
PHP访问Google Search API的方法
2015/03/05 PHP
swoole和websocket简单聊天室开发
2017/11/18 PHP
Laravel 5.4.36中session没有保存成功问题的解决
2018/02/19 PHP
用js实现in_array的方法
2013/11/05 Javascript
js中传递特殊字符(+,&amp;)的方法
2014/01/16 Javascript
js控制iframe的高度/宽度让其自适应内容
2014/04/09 Javascript
Node.js事件驱动
2015/06/18 Javascript
JavaScript中实现Map的示例代码
2015/09/09 Javascript
javascript设置页面背景色及背景图片的方法
2015/12/29 Javascript
封装好的javascript前端分页插件pagination
2016/01/04 Javascript
深入学习jQuery Validate表单验证(二)
2016/01/18 Javascript
jquery判断页面网址是否有效的两种方法
2016/12/11 Javascript
微信小程序新手教程之页面打开数量限制
2019/03/03 Javascript
jQuery中使用validate插件校验表单功能
2019/05/24 jQuery
Python中的jquery PyQuery库使用小结
2014/05/13 Python
Python装饰器用法实例总结
2018/02/07 Python
python模块之subprocess模块级方法的使用
2019/03/26 Python
基于腾讯云服务器部署微信小程序后台服务(Python+Django)
2019/05/08 Python
python 动态调用函数实例解析
2019/10/21 Python
python pygame实现球球大作战
2019/11/25 Python
Python实现变声器功能(萝莉音御姐音)
2019/12/05 Python
Python终端输出彩色字符方法详解
2020/02/11 Python
浅谈SciPy中的optimize.minimize实现受限优化问题
2020/02/29 Python
Python标准库json模块和pickle模块使用详解
2020/03/10 Python
Iconfont(矢量图标)+iconmoon(图标svg互转)配合javascript实现社交分享系统
2020/04/21 Python
python如何爬取动态网站
2020/09/09 Python
python 基于pygame实现俄罗斯方块
2021/03/02 Python
世界上最大的糖果店:Dylan’s Candy Bar
2017/11/07 全球购物
亚洲最大的运动鞋寄售店:KicksCrew
2020/11/26 全球购物
人力资源行政经理自我评价
2013/10/23 职场文书
店长岗位职责
2013/11/21 职场文书
物业公司采购员岗位职责
2013/12/31 职场文书
学子宴答谢词
2014/01/25 职场文书
工伤死亡理赔协议书
2014/10/20 职场文书
死者家属慰问信
2015/03/24 职场文书